Merge pull request #1024 from asuessenbach/placeholder

Add placeholder members to Dispatchers
This commit is contained in:
Andreas Süßenbach 2021-07-22 13:30:26 +02:00 committed by GitHub
commit 23091775c4
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 261 additions and 56 deletions

View File

@ -187,11 +187,11 @@ ${commandDefinitions}
std::string VulkanHppGenerator::generateDispatchLoaderDynamic() const
{
const std::string dispatchLoaderDynamicTemplate = R"(
using PFN_dummy = void ( * )();
class DispatchLoaderDynamic : public DispatchLoaderBase
{
public:
using PFN_dummy = void ( * )();
${commandMembers}
public:
@ -530,6 +530,7 @@ std::string VulkanHppGenerator::generateRAIIDispatchers() const
std::string contextInitializerList, deviceInitAssignments, instanceInitAssignments;
std::string contextMembers, deviceMembers, instanceMembers;
std::string previousEnter;
for ( auto const & command : m_commands )
{
std::string enter, leave;
@ -555,7 +556,12 @@ std::string VulkanHppGenerator::generateRAIIDispatchers() const
}
deviceInitAssignments += leave;
deviceMembers += enter + " PFN_" + command.first + " " + command.first + " = 0;\n" + leave;
deviceMembers += enter + " PFN_" + command.first + " " + command.first + " = 0;\n";
if ( !enter.empty() )
{
deviceMembers += "#else\n PFN_dummy " + command.first + "_placeholder = 0;\n";
}
deviceMembers += leave;
}
else
{
@ -571,7 +577,12 @@ std::string VulkanHppGenerator::generateRAIIDispatchers() const
}
instanceInitAssignments += leave;
instanceMembers += enter + " PFN_" + command.first + " " + command.first + " = 0;\n" + leave;
instanceMembers += enter + " PFN_" + command.first + " " + command.first + " = 0;\n";
if ( !enter.empty() )
{
instanceMembers += "#else\n PFN_dummy " + command.first + "_placeholder = 0;\n";
}
instanceMembers += leave;
}
previousEnter = enter;
}
@ -908,7 +919,7 @@ void VulkanHppGenerator::appendDispatchLoaderDynamicCommands( std::vector<Requir
std::string & instanceCommandAssignments,
std::string & deviceCommandAssignments ) const
{
std::string members, initial, instance, device;
std::string members, initial, instance, device, placeholders;
for ( auto const & require : requireData )
{
for ( auto const & command : require.commands )
@ -921,6 +932,7 @@ void VulkanHppGenerator::appendDispatchLoaderDynamicCommands( std::vector<Requir
assert( commandIt != m_commands.end() );
members += " PFN_" + commandIt->first + " " + commandIt->first + " = 0;\n";
placeholders += " PFN_dummy " + commandIt->first + "_placeholder = 0;\n";
if ( commandIt->second.handle.empty() )
{
initial += generateDispatchLoaderDynamicCommandAssignment( commandIt->first, commandIt->second, "NULL" );
@ -941,7 +953,12 @@ void VulkanHppGenerator::appendDispatchLoaderDynamicCommands( std::vector<Requir
std::string header = "\n" + enter + " //=== " + title + " ===\n";
if ( !members.empty() )
{
commandMembers += header + members + leave;
commandMembers += header + members;
if ( !enter.empty() )
{
commandMembers += "#else\n" + placeholders;
}
commandMembers += leave;
}
if ( !initial.empty() )
{

View File

@ -10464,11 +10464,11 @@ namespace VULKAN_HPP_NAMESPACE
};
#endif
using PFN_dummy = void ( * )();
class DispatchLoaderDynamic : public DispatchLoaderBase
{
public:
using PFN_dummy = void ( * )();
//=== VK_VERSION_1_0 ===
PFN_vkCreateInstance vkCreateInstance = 0;
PFN_vkDestroyInstance vkDestroyInstance = 0;
@ -10687,29 +10687,43 @@ namespace VULKAN_HPP_NAMESPACE
//=== VK_KHR_xlib_surface ===
PFN_vkCreateXlibSurfaceKHR vkCreateXlibSurfaceKHR = 0;
PFN_vkGetPhysicalDeviceXlibPresentationSupportKHR vkGetPhysicalDeviceXlibPresentationSupportKHR = 0;
#else
PFN_dummy vkCreateXlibSurfaceKHR_placeholder = 0;
PFN_dummy vkGetPhysicalDeviceXlibPresentationSupportKHR_placeholder = 0;
#endif /*VK_USE_PLATFORM_XLIB_KHR*/
#if defined( VK_USE_PLATFORM_XCB_KHR )
//=== VK_KHR_xcb_surface ===
PFN_vkCreateXcbSurfaceKHR vkCreateXcbSurfaceKHR = 0;
PFN_vkGetPhysicalDeviceXcbPresentationSupportKHR vkGetPhysicalDeviceXcbPresentationSupportKHR = 0;
#else
PFN_dummy vkCreateXcbSurfaceKHR_placeholder = 0;
PFN_dummy vkGetPhysicalDeviceXcbPresentationSupportKHR_placeholder = 0;
#endif /*VK_USE_PLATFORM_XCB_KHR*/
#if defined( VK_USE_PLATFORM_WAYLAND_KHR )
//=== VK_KHR_wayland_surface ===
PFN_vkCreateWaylandSurfaceKHR vkCreateWaylandSurfaceKHR = 0;
PFN_vkGetPhysicalDeviceWaylandPresentationSupportKHR vkGetPhysicalDeviceWaylandPresentationSupportKHR = 0;
#else
PFN_dummy vkCreateWaylandSurfaceKHR_placeholder = 0;
PFN_dummy vkGetPhysicalDeviceWaylandPresentationSupportKHR_placeholder = 0;
#endif /*VK_USE_PLATFORM_WAYLAND_KHR*/
#if defined( VK_USE_PLATFORM_ANDROID_KHR )
//=== VK_KHR_android_surface ===
PFN_vkCreateAndroidSurfaceKHR vkCreateAndroidSurfaceKHR = 0;
#else
PFN_dummy vkCreateAndroidSurfaceKHR_placeholder = 0;
#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
#if defined( VK_USE_PLATFORM_WIN32_KHR )
//=== VK_KHR_win32_surface ===
PFN_vkCreateWin32SurfaceKHR vkCreateWin32SurfaceKHR = 0;
PFN_vkGetPhysicalDeviceWin32PresentationSupportKHR vkGetPhysicalDeviceWin32PresentationSupportKHR = 0;
#else
PFN_dummy vkCreateWin32SurfaceKHR_placeholder = 0;
PFN_dummy vkGetPhysicalDeviceWin32PresentationSupportKHR_placeholder = 0;
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
//=== VK_EXT_debug_report ===
@ -10738,11 +10752,26 @@ namespace VULKAN_HPP_NAMESPACE
PFN_vkCmdBeginVideoCodingKHR vkCmdBeginVideoCodingKHR = 0;
PFN_vkCmdEndVideoCodingKHR vkCmdEndVideoCodingKHR = 0;
PFN_vkCmdControlVideoCodingKHR vkCmdControlVideoCodingKHR = 0;
#else
PFN_dummy vkGetPhysicalDeviceVideoCapabilitiesKHR_placeholder = 0;
PFN_dummy vkGetPhysicalDeviceVideoFormatPropertiesKHR_placeholder = 0;
PFN_dummy vkCreateVideoSessionKHR_placeholder = 0;
PFN_dummy vkDestroyVideoSessionKHR_placeholder = 0;
PFN_dummy vkGetVideoSessionMemoryRequirementsKHR_placeholder = 0;
PFN_dummy vkBindVideoSessionMemoryKHR_placeholder = 0;
PFN_dummy vkCreateVideoSessionParametersKHR_placeholder = 0;
PFN_dummy vkUpdateVideoSessionParametersKHR_placeholder = 0;
PFN_dummy vkDestroyVideoSessionParametersKHR_placeholder = 0;
PFN_dummy vkCmdBeginVideoCodingKHR_placeholder = 0;
PFN_dummy vkCmdEndVideoCodingKHR_placeholder = 0;
PFN_dummy vkCmdControlVideoCodingKHR_placeholder = 0;
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
#if defined( VK_ENABLE_BETA_EXTENSIONS )
//=== VK_KHR_video_decode_queue ===
PFN_vkCmdDecodeVideoKHR vkCmdDecodeVideoKHR = 0;
#else
PFN_dummy vkCmdDecodeVideoKHR_placeholder = 0;
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
//=== VK_EXT_transform_feedback ===
@ -10774,6 +10803,8 @@ namespace VULKAN_HPP_NAMESPACE
#if defined( VK_USE_PLATFORM_GGP )
//=== VK_GGP_stream_descriptor_surface ===
PFN_vkCreateStreamDescriptorSurfaceGGP vkCreateStreamDescriptorSurfaceGGP = 0;
#else
PFN_dummy vkCreateStreamDescriptorSurfaceGGP_placeholder = 0;
#endif /*VK_USE_PLATFORM_GGP*/
//=== VK_NV_external_memory_capabilities ===
@ -10782,6 +10813,8 @@ namespace VULKAN_HPP_NAMESPACE
#if defined( VK_USE_PLATFORM_WIN32_KHR )
//=== VK_NV_external_memory_win32 ===
PFN_vkGetMemoryWin32HandleNV vkGetMemoryWin32HandleNV = 0;
#else
PFN_dummy vkGetMemoryWin32HandleNV_placeholder = 0;
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
//=== VK_KHR_get_physical_device_properties2 ===
@ -10801,6 +10834,8 @@ namespace VULKAN_HPP_NAMESPACE
#if defined( VK_USE_PLATFORM_VI_NN )
//=== VK_NN_vi_surface ===
PFN_vkCreateViSurfaceNN vkCreateViSurfaceNN = 0;
#else
PFN_dummy vkCreateViSurfaceNN_placeholder = 0;
#endif /*VK_USE_PLATFORM_VI_NN*/
//=== VK_KHR_maintenance1 ===
@ -10816,6 +10851,9 @@ namespace VULKAN_HPP_NAMESPACE
//=== VK_KHR_external_memory_win32 ===
PFN_vkGetMemoryWin32HandleKHR vkGetMemoryWin32HandleKHR = 0;
PFN_vkGetMemoryWin32HandlePropertiesKHR vkGetMemoryWin32HandlePropertiesKHR = 0;
#else
PFN_dummy vkGetMemoryWin32HandleKHR_placeholder = 0;
PFN_dummy vkGetMemoryWin32HandlePropertiesKHR_placeholder = 0;
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
//=== VK_KHR_external_memory_fd ===
@ -10829,6 +10867,9 @@ namespace VULKAN_HPP_NAMESPACE
//=== VK_KHR_external_semaphore_win32 ===
PFN_vkImportSemaphoreWin32HandleKHR vkImportSemaphoreWin32HandleKHR = 0;
PFN_vkGetSemaphoreWin32HandleKHR vkGetSemaphoreWin32HandleKHR = 0;
#else
PFN_dummy vkImportSemaphoreWin32HandleKHR_placeholder = 0;
PFN_dummy vkGetSemaphoreWin32HandleKHR_placeholder = 0;
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
//=== VK_KHR_external_semaphore_fd ===
@ -10858,6 +10899,9 @@ namespace VULKAN_HPP_NAMESPACE
//=== VK_EXT_acquire_xlib_display ===
PFN_vkAcquireXlibDisplayEXT vkAcquireXlibDisplayEXT = 0;
PFN_vkGetRandROutputDisplayEXT vkGetRandROutputDisplayEXT = 0;
#else
PFN_dummy vkAcquireXlibDisplayEXT_placeholder = 0;
PFN_dummy vkGetRandROutputDisplayEXT_placeholder = 0;
#endif /*VK_USE_PLATFORM_XLIB_XRANDR_EXT*/
//=== VK_EXT_display_surface_counter ===
@ -10895,6 +10939,9 @@ namespace VULKAN_HPP_NAMESPACE
//=== VK_KHR_external_fence_win32 ===
PFN_vkImportFenceWin32HandleKHR vkImportFenceWin32HandleKHR = 0;
PFN_vkGetFenceWin32HandleKHR vkGetFenceWin32HandleKHR = 0;
#else
PFN_dummy vkImportFenceWin32HandleKHR_placeholder = 0;
PFN_dummy vkGetFenceWin32HandleKHR_placeholder = 0;
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
//=== VK_KHR_external_fence_fd ===
@ -10922,11 +10969,15 @@ namespace VULKAN_HPP_NAMESPACE
#if defined( VK_USE_PLATFORM_IOS_MVK )
//=== VK_MVK_ios_surface ===
PFN_vkCreateIOSSurfaceMVK vkCreateIOSSurfaceMVK = 0;
#else
PFN_dummy vkCreateIOSSurfaceMVK_placeholder = 0;
#endif /*VK_USE_PLATFORM_IOS_MVK*/
#if defined( VK_USE_PLATFORM_MACOS_MVK )
//=== VK_MVK_macos_surface ===
PFN_vkCreateMacOSSurfaceMVK vkCreateMacOSSurfaceMVK = 0;
#else
PFN_dummy vkCreateMacOSSurfaceMVK_placeholder = 0;
#endif /*VK_USE_PLATFORM_MACOS_MVK*/
//=== VK_EXT_debug_utils ===
@ -10946,6 +10997,9 @@ namespace VULKAN_HPP_NAMESPACE
//=== VK_ANDROID_external_memory_android_hardware_buffer ===
PFN_vkGetAndroidHardwareBufferPropertiesANDROID vkGetAndroidHardwareBufferPropertiesANDROID = 0;
PFN_vkGetMemoryAndroidHardwareBufferANDROID vkGetMemoryAndroidHardwareBufferANDROID = 0;
#else
PFN_dummy vkGetAndroidHardwareBufferPropertiesANDROID_placeholder = 0;
PFN_dummy vkGetMemoryAndroidHardwareBufferANDROID_placeholder = 0;
#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
//=== VK_EXT_sample_locations ===
@ -11062,11 +11116,15 @@ namespace VULKAN_HPP_NAMESPACE
#if defined( VK_USE_PLATFORM_FUCHSIA )
//=== VK_FUCHSIA_imagepipe_surface ===
PFN_vkCreateImagePipeSurfaceFUCHSIA vkCreateImagePipeSurfaceFUCHSIA = 0;
#else
PFN_dummy vkCreateImagePipeSurfaceFUCHSIA_placeholder = 0;
#endif /*VK_USE_PLATFORM_FUCHSIA*/
#if defined( VK_USE_PLATFORM_METAL_EXT )
//=== VK_EXT_metal_surface ===
PFN_vkCreateMetalSurfaceEXT vkCreateMetalSurfaceEXT = 0;
#else
PFN_dummy vkCreateMetalSurfaceEXT_placeholder = 0;
#endif /*VK_USE_PLATFORM_METAL_EXT*/
//=== VK_KHR_fragment_shading_rate ===
@ -11095,6 +11153,11 @@ namespace VULKAN_HPP_NAMESPACE
PFN_vkAcquireFullScreenExclusiveModeEXT vkAcquireFullScreenExclusiveModeEXT = 0;
PFN_vkReleaseFullScreenExclusiveModeEXT vkReleaseFullScreenExclusiveModeEXT = 0;
PFN_vkGetDeviceGroupSurfacePresentModes2EXT vkGetDeviceGroupSurfacePresentModes2EXT = 0;
#else
PFN_dummy vkGetPhysicalDeviceSurfacePresentModes2EXT_placeholder = 0;
PFN_dummy vkAcquireFullScreenExclusiveModeEXT_placeholder = 0;
PFN_dummy vkReleaseFullScreenExclusiveModeEXT_placeholder = 0;
PFN_dummy vkGetDeviceGroupSurfacePresentModes2EXT_placeholder = 0;
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
//=== VK_EXT_headless_surface ===
@ -11158,6 +11221,8 @@ namespace VULKAN_HPP_NAMESPACE
#if defined( VK_ENABLE_BETA_EXTENSIONS )
//=== VK_KHR_video_encode_queue ===
PFN_vkCmdEncodeVideoKHR vkCmdEncodeVideoKHR = 0;
#else
PFN_dummy vkCmdEncodeVideoKHR_placeholder = 0;
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
//=== VK_KHR_synchronization2 ===
@ -11185,12 +11250,18 @@ namespace VULKAN_HPP_NAMESPACE
//=== VK_NV_acquire_winrt_display ===
PFN_vkAcquireWinrtDisplayNV vkAcquireWinrtDisplayNV = 0;
PFN_vkGetWinrtDisplayNV vkGetWinrtDisplayNV = 0;
#else
PFN_dummy vkAcquireWinrtDisplayNV_placeholder = 0;
PFN_dummy vkGetWinrtDisplayNV_placeholder = 0;
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
#if defined( VK_USE_PLATFORM_DIRECTFB_EXT )
//=== VK_EXT_directfb_surface ===
PFN_vkCreateDirectFBSurfaceEXT vkCreateDirectFBSurfaceEXT = 0;
PFN_vkGetPhysicalDeviceDirectFBPresentationSupportEXT vkGetPhysicalDeviceDirectFBPresentationSupportEXT = 0;
#else
PFN_dummy vkCreateDirectFBSurfaceEXT_placeholder = 0;
PFN_dummy vkGetPhysicalDeviceDirectFBPresentationSupportEXT_placeholder = 0;
#endif /*VK_USE_PLATFORM_DIRECTFB_EXT*/
//=== VK_KHR_ray_tracing_pipeline ===
@ -11209,12 +11280,18 @@ namespace VULKAN_HPP_NAMESPACE
//=== VK_FUCHSIA_external_memory ===
PFN_vkGetMemoryZirconHandleFUCHSIA vkGetMemoryZirconHandleFUCHSIA = 0;
PFN_vkGetMemoryZirconHandlePropertiesFUCHSIA vkGetMemoryZirconHandlePropertiesFUCHSIA = 0;
#else
PFN_dummy vkGetMemoryZirconHandleFUCHSIA_placeholder = 0;
PFN_dummy vkGetMemoryZirconHandlePropertiesFUCHSIA_placeholder = 0;
#endif /*VK_USE_PLATFORM_FUCHSIA*/
#if defined( VK_USE_PLATFORM_FUCHSIA )
//=== VK_FUCHSIA_external_semaphore ===
PFN_vkImportSemaphoreZirconHandleFUCHSIA vkImportSemaphoreZirconHandleFUCHSIA = 0;
PFN_vkGetSemaphoreZirconHandleFUCHSIA vkGetSemaphoreZirconHandleFUCHSIA = 0;
#else
PFN_dummy vkImportSemaphoreZirconHandleFUCHSIA_placeholder = 0;
PFN_dummy vkGetSemaphoreZirconHandleFUCHSIA_placeholder = 0;
#endif /*VK_USE_PLATFORM_FUCHSIA*/
//=== VK_HUAWEI_subpass_shading ===
@ -11238,6 +11315,9 @@ namespace VULKAN_HPP_NAMESPACE
//=== VK_QNX_screen_surface ===
PFN_vkCreateScreenSurfaceQNX vkCreateScreenSurfaceQNX = 0;
PFN_vkGetPhysicalDeviceScreenPresentationSupportQNX vkGetPhysicalDeviceScreenPresentationSupportQNX = 0;
#else
PFN_dummy vkCreateScreenSurfaceQNX_placeholder = 0;
PFN_dummy vkGetPhysicalDeviceScreenPresentationSupportQNX_placeholder = 0;
#endif /*VK_USE_PLATFORM_SCREEN_QNX*/
//=== VK_EXT_color_write_enable ===

View File

@ -340,54 +340,84 @@ namespace VULKAN_HPP_NAMESPACE
PFN_vkAcquireDrmDisplayEXT vkAcquireDrmDisplayEXT = 0;
# if defined( VK_USE_PLATFORM_WIN32_KHR )
PFN_vkAcquireWinrtDisplayNV vkAcquireWinrtDisplayNV = 0;
# else
PFN_dummy vkAcquireWinrtDisplayNV_placeholder = 0;
# endif /*VK_USE_PLATFORM_WIN32_KHR*/
# if defined( VK_USE_PLATFORM_XLIB_XRANDR_EXT )
PFN_vkAcquireXlibDisplayEXT vkAcquireXlibDisplayEXT = 0;
# else
PFN_dummy vkAcquireXlibDisplayEXT_placeholder = 0;
# endif /*VK_USE_PLATFORM_XLIB_XRANDR_EXT*/
# if defined( VK_USE_PLATFORM_ANDROID_KHR )
PFN_vkCreateAndroidSurfaceKHR vkCreateAndroidSurfaceKHR = 0;
# else
PFN_dummy vkCreateAndroidSurfaceKHR_placeholder = 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;
# else
PFN_dummy vkCreateDirectFBSurfaceEXT_placeholder = 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;
# else
PFN_dummy vkCreateIOSSurfaceMVK_placeholder = 0;
# endif /*VK_USE_PLATFORM_IOS_MVK*/
# if defined( VK_USE_PLATFORM_FUCHSIA )
PFN_vkCreateImagePipeSurfaceFUCHSIA vkCreateImagePipeSurfaceFUCHSIA = 0;
# else
PFN_dummy vkCreateImagePipeSurfaceFUCHSIA_placeholder = 0;
# endif /*VK_USE_PLATFORM_FUCHSIA*/
# if defined( VK_USE_PLATFORM_MACOS_MVK )
PFN_vkCreateMacOSSurfaceMVK vkCreateMacOSSurfaceMVK = 0;
# else
PFN_dummy vkCreateMacOSSurfaceMVK_placeholder = 0;
# endif /*VK_USE_PLATFORM_MACOS_MVK*/
# if defined( VK_USE_PLATFORM_METAL_EXT )
PFN_vkCreateMetalSurfaceEXT vkCreateMetalSurfaceEXT = 0;
# else
PFN_dummy vkCreateMetalSurfaceEXT_placeholder = 0;
# endif /*VK_USE_PLATFORM_METAL_EXT*/
# if defined( VK_USE_PLATFORM_SCREEN_QNX )
PFN_vkCreateScreenSurfaceQNX vkCreateScreenSurfaceQNX = 0;
# else
PFN_dummy vkCreateScreenSurfaceQNX_placeholder = 0;
# endif /*VK_USE_PLATFORM_SCREEN_QNX*/
# if defined( VK_USE_PLATFORM_GGP )
PFN_vkCreateStreamDescriptorSurfaceGGP vkCreateStreamDescriptorSurfaceGGP = 0;
# else
PFN_dummy vkCreateStreamDescriptorSurfaceGGP_placeholder = 0;
# endif /*VK_USE_PLATFORM_GGP*/
# if defined( VK_USE_PLATFORM_VI_NN )
PFN_vkCreateViSurfaceNN vkCreateViSurfaceNN = 0;
# else
PFN_dummy vkCreateViSurfaceNN_placeholder = 0;
# endif /*VK_USE_PLATFORM_VI_NN*/
# if defined( VK_USE_PLATFORM_WAYLAND_KHR )
PFN_vkCreateWaylandSurfaceKHR vkCreateWaylandSurfaceKHR = 0;
# else
PFN_dummy vkCreateWaylandSurfaceKHR_placeholder = 0;
# endif /*VK_USE_PLATFORM_WAYLAND_KHR*/
# if defined( VK_USE_PLATFORM_WIN32_KHR )
PFN_vkCreateWin32SurfaceKHR vkCreateWin32SurfaceKHR = 0;
# else
PFN_dummy vkCreateWin32SurfaceKHR_placeholder = 0;
# endif /*VK_USE_PLATFORM_WIN32_KHR*/
# if defined( VK_USE_PLATFORM_XCB_KHR )
PFN_vkCreateXcbSurfaceKHR vkCreateXcbSurfaceKHR = 0;
# else
PFN_dummy vkCreateXcbSurfaceKHR_placeholder = 0;
# endif /*VK_USE_PLATFORM_XCB_KHR*/
# if defined( VK_USE_PLATFORM_XLIB_KHR )
PFN_vkCreateXlibSurfaceKHR vkCreateXlibSurfaceKHR = 0;
# else
PFN_dummy vkCreateXlibSurfaceKHR_placeholder = 0;
# endif /*VK_USE_PLATFORM_XLIB_KHR*/
PFN_vkDebugReportMessageEXT vkDebugReportMessageEXT = 0;
PFN_vkDestroyDebugReportCallbackEXT vkDestroyDebugReportCallbackEXT = 0;
@ -412,6 +442,8 @@ namespace VULKAN_HPP_NAMESPACE
PFN_vkGetPhysicalDeviceCooperativeMatrixPropertiesNV vkGetPhysicalDeviceCooperativeMatrixPropertiesNV = 0;
# if defined( VK_USE_PLATFORM_DIRECTFB_EXT )
PFN_vkGetPhysicalDeviceDirectFBPresentationSupportEXT vkGetPhysicalDeviceDirectFBPresentationSupportEXT = 0;
# else
PFN_dummy vkGetPhysicalDeviceDirectFBPresentationSupportEXT_placeholder = 0;
# endif /*VK_USE_PLATFORM_DIRECTFB_EXT*/
PFN_vkGetPhysicalDeviceDisplayPlaneProperties2KHR vkGetPhysicalDeviceDisplayPlaneProperties2KHR = 0;
PFN_vkGetPhysicalDeviceDisplayPlanePropertiesKHR vkGetPhysicalDeviceDisplayPlanePropertiesKHR = 0;
@ -449,6 +481,8 @@ namespace VULKAN_HPP_NAMESPACE
PFN_vkGetPhysicalDeviceQueueFamilyProperties2KHR vkGetPhysicalDeviceQueueFamilyProperties2KHR = 0;
# if defined( VK_USE_PLATFORM_SCREEN_QNX )
PFN_vkGetPhysicalDeviceScreenPresentationSupportQNX vkGetPhysicalDeviceScreenPresentationSupportQNX = 0;
# else
PFN_dummy vkGetPhysicalDeviceScreenPresentationSupportQNX_placeholder = 0;
# endif /*VK_USE_PLATFORM_SCREEN_QNX*/
PFN_vkGetPhysicalDeviceSparseImageFormatProperties vkGetPhysicalDeviceSparseImageFormatProperties = 0;
PFN_vkGetPhysicalDeviceSparseImageFormatProperties2 vkGetPhysicalDeviceSparseImageFormatProperties2 = 0;
@ -462,33 +496,51 @@ namespace VULKAN_HPP_NAMESPACE
PFN_vkGetPhysicalDeviceSurfaceFormatsKHR vkGetPhysicalDeviceSurfaceFormatsKHR = 0;
# if defined( VK_USE_PLATFORM_WIN32_KHR )
PFN_vkGetPhysicalDeviceSurfacePresentModes2EXT vkGetPhysicalDeviceSurfacePresentModes2EXT = 0;
# else
PFN_dummy vkGetPhysicalDeviceSurfacePresentModes2EXT_placeholder = 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;
# else
PFN_dummy vkGetPhysicalDeviceVideoCapabilitiesKHR_placeholder = 0;
# endif /*VK_ENABLE_BETA_EXTENSIONS*/
# if defined( VK_ENABLE_BETA_EXTENSIONS )
PFN_vkGetPhysicalDeviceVideoFormatPropertiesKHR vkGetPhysicalDeviceVideoFormatPropertiesKHR = 0;
# else
PFN_dummy vkGetPhysicalDeviceVideoFormatPropertiesKHR_placeholder = 0;
# endif /*VK_ENABLE_BETA_EXTENSIONS*/
# if defined( VK_USE_PLATFORM_WAYLAND_KHR )
PFN_vkGetPhysicalDeviceWaylandPresentationSupportKHR vkGetPhysicalDeviceWaylandPresentationSupportKHR = 0;
# else
PFN_dummy vkGetPhysicalDeviceWaylandPresentationSupportKHR_placeholder = 0;
# endif /*VK_USE_PLATFORM_WAYLAND_KHR*/
# if defined( VK_USE_PLATFORM_WIN32_KHR )
PFN_vkGetPhysicalDeviceWin32PresentationSupportKHR vkGetPhysicalDeviceWin32PresentationSupportKHR = 0;
# else
PFN_dummy vkGetPhysicalDeviceWin32PresentationSupportKHR_placeholder = 0;
# endif /*VK_USE_PLATFORM_WIN32_KHR*/
# if defined( VK_USE_PLATFORM_XCB_KHR )
PFN_vkGetPhysicalDeviceXcbPresentationSupportKHR vkGetPhysicalDeviceXcbPresentationSupportKHR = 0;
# else
PFN_dummy vkGetPhysicalDeviceXcbPresentationSupportKHR_placeholder = 0;
# endif /*VK_USE_PLATFORM_XCB_KHR*/
# if defined( VK_USE_PLATFORM_XLIB_KHR )
PFN_vkGetPhysicalDeviceXlibPresentationSupportKHR vkGetPhysicalDeviceXlibPresentationSupportKHR = 0;
# else
PFN_dummy vkGetPhysicalDeviceXlibPresentationSupportKHR_placeholder = 0;
# endif /*VK_USE_PLATFORM_XLIB_KHR*/
# if defined( VK_USE_PLATFORM_XLIB_XRANDR_EXT )
PFN_vkGetRandROutputDisplayEXT vkGetRandROutputDisplayEXT = 0;
# else
PFN_dummy vkGetRandROutputDisplayEXT_placeholder = 0;
# endif /*VK_USE_PLATFORM_XLIB_XRANDR_EXT*/
# if defined( VK_USE_PLATFORM_WIN32_KHR )
PFN_vkGetWinrtDisplayNV vkGetWinrtDisplayNV = 0;
# else
PFN_dummy vkGetWinrtDisplayNV_placeholder = 0;
# endif /*VK_USE_PLATFORM_WIN32_KHR*/
PFN_vkReleaseDisplayEXT vkReleaseDisplayEXT = 0;
PFN_vkSubmitDebugUtilsMessageEXT vkSubmitDebugUtilsMessageEXT = 0;
@ -1246,6 +1298,8 @@ namespace VULKAN_HPP_NAMESPACE
public:
# if defined( VK_USE_PLATFORM_WIN32_KHR )
PFN_vkAcquireFullScreenExclusiveModeEXT vkAcquireFullScreenExclusiveModeEXT = 0;
# else
PFN_dummy vkAcquireFullScreenExclusiveModeEXT_placeholder = 0;
# endif /*VK_USE_PLATFORM_WIN32_KHR*/
PFN_vkAcquireNextImage2KHR vkAcquireNextImage2KHR = 0;
PFN_vkAcquireNextImageKHR vkAcquireNextImageKHR = 0;
@ -1264,6 +1318,8 @@ namespace VULKAN_HPP_NAMESPACE
PFN_vkBindImageMemory2KHR vkBindImageMemory2KHR = 0;
# if defined( VK_ENABLE_BETA_EXTENSIONS )
PFN_vkBindVideoSessionMemoryKHR vkBindVideoSessionMemoryKHR = 0;
# else
PFN_dummy vkBindVideoSessionMemoryKHR_placeholder = 0;
# endif /*VK_ENABLE_BETA_EXTENSIONS*/
PFN_vkBuildAccelerationStructuresKHR vkBuildAccelerationStructuresKHR = 0;
PFN_vkCmdBeginConditionalRenderingEXT vkCmdBeginConditionalRenderingEXT = 0;
@ -1276,6 +1332,8 @@ namespace VULKAN_HPP_NAMESPACE
PFN_vkCmdBeginTransformFeedbackEXT vkCmdBeginTransformFeedbackEXT = 0;
# if defined( VK_ENABLE_BETA_EXTENSIONS )
PFN_vkCmdBeginVideoCodingKHR vkCmdBeginVideoCodingKHR = 0;
# else
PFN_dummy vkCmdBeginVideoCodingKHR_placeholder = 0;
# endif /*VK_ENABLE_BETA_EXTENSIONS*/
PFN_vkCmdBindDescriptorSets vkCmdBindDescriptorSets = 0;
PFN_vkCmdBindIndexBuffer vkCmdBindIndexBuffer = 0;
@ -1296,6 +1354,8 @@ namespace VULKAN_HPP_NAMESPACE
PFN_vkCmdClearDepthStencilImage vkCmdClearDepthStencilImage = 0;
# if defined( VK_ENABLE_BETA_EXTENSIONS )
PFN_vkCmdControlVideoCodingKHR vkCmdControlVideoCodingKHR = 0;
# else
PFN_dummy vkCmdControlVideoCodingKHR_placeholder = 0;
# endif /*VK_ENABLE_BETA_EXTENSIONS*/
PFN_vkCmdCopyAccelerationStructureKHR vkCmdCopyAccelerationStructureKHR = 0;
PFN_vkCmdCopyAccelerationStructureNV vkCmdCopyAccelerationStructureNV = 0;
@ -1316,6 +1376,8 @@ namespace VULKAN_HPP_NAMESPACE
PFN_vkCmdDebugMarkerInsertEXT vkCmdDebugMarkerInsertEXT = 0;
# if defined( VK_ENABLE_BETA_EXTENSIONS )
PFN_vkCmdDecodeVideoKHR vkCmdDecodeVideoKHR = 0;
# else
PFN_dummy vkCmdDecodeVideoKHR_placeholder = 0;
# endif /*VK_ENABLE_BETA_EXTENSIONS*/
PFN_vkCmdDispatch vkCmdDispatch = 0;
PFN_vkCmdDispatchBase vkCmdDispatchBase = 0;
@ -1339,6 +1401,8 @@ namespace VULKAN_HPP_NAMESPACE
PFN_vkCmdDrawMultiIndexedEXT vkCmdDrawMultiIndexedEXT = 0;
# if defined( VK_ENABLE_BETA_EXTENSIONS )
PFN_vkCmdEncodeVideoKHR vkCmdEncodeVideoKHR = 0;
# else
PFN_dummy vkCmdEncodeVideoKHR_placeholder = 0;
# endif /*VK_ENABLE_BETA_EXTENSIONS*/
PFN_vkCmdEndConditionalRenderingEXT vkCmdEndConditionalRenderingEXT = 0;
PFN_vkCmdEndDebugUtilsLabelEXT vkCmdEndDebugUtilsLabelEXT = 0;
@ -1350,6 +1414,8 @@ namespace VULKAN_HPP_NAMESPACE
PFN_vkCmdEndTransformFeedbackEXT vkCmdEndTransformFeedbackEXT = 0;
# if defined( VK_ENABLE_BETA_EXTENSIONS )
PFN_vkCmdEndVideoCodingKHR vkCmdEndVideoCodingKHR = 0;
# else
PFN_dummy vkCmdEndVideoCodingKHR_placeholder = 0;
# endif /*VK_ENABLE_BETA_EXTENSIONS*/
PFN_vkCmdExecuteCommands vkCmdExecuteCommands = 0;
PFN_vkCmdExecuteGeneratedCommandsNV vkCmdExecuteGeneratedCommandsNV = 0;
@ -1470,9 +1536,13 @@ namespace VULKAN_HPP_NAMESPACE
PFN_vkCreateValidationCacheEXT vkCreateValidationCacheEXT = 0;
# if defined( VK_ENABLE_BETA_EXTENSIONS )
PFN_vkCreateVideoSessionKHR vkCreateVideoSessionKHR = 0;
# else
PFN_dummy vkCreateVideoSessionKHR_placeholder = 0;
# endif /*VK_ENABLE_BETA_EXTENSIONS*/
# if defined( VK_ENABLE_BETA_EXTENSIONS )
PFN_vkCreateVideoSessionParametersKHR vkCreateVideoSessionParametersKHR = 0;
# else
PFN_dummy vkCreateVideoSessionParametersKHR_placeholder = 0;
# endif /*VK_ENABLE_BETA_EXTENSIONS*/
PFN_vkDebugMarkerSetObjectNameEXT vkDebugMarkerSetObjectNameEXT = 0;
PFN_vkDebugMarkerSetObjectTagEXT vkDebugMarkerSetObjectTagEXT = 0;
@ -1511,9 +1581,13 @@ namespace VULKAN_HPP_NAMESPACE
PFN_vkDestroyValidationCacheEXT vkDestroyValidationCacheEXT = 0;
# if defined( VK_ENABLE_BETA_EXTENSIONS )
PFN_vkDestroyVideoSessionKHR vkDestroyVideoSessionKHR = 0;
# else
PFN_dummy vkDestroyVideoSessionKHR_placeholder = 0;
# endif /*VK_ENABLE_BETA_EXTENSIONS*/
# if defined( VK_ENABLE_BETA_EXTENSIONS )
PFN_vkDestroyVideoSessionParametersKHR vkDestroyVideoSessionParametersKHR = 0;
# else
PFN_dummy vkDestroyVideoSessionParametersKHR_placeholder = 0;
# endif /*VK_ENABLE_BETA_EXTENSIONS*/
PFN_vkDeviceWaitIdle vkDeviceWaitIdle = 0;
PFN_vkDisplayPowerControlEXT vkDisplayPowerControlEXT = 0;
@ -1528,6 +1602,8 @@ namespace VULKAN_HPP_NAMESPACE
PFN_vkGetAccelerationStructureMemoryRequirementsNV vkGetAccelerationStructureMemoryRequirementsNV = 0;
# if defined( VK_USE_PLATFORM_ANDROID_KHR )
PFN_vkGetAndroidHardwareBufferPropertiesANDROID vkGetAndroidHardwareBufferPropertiesANDROID = 0;
# else
PFN_dummy vkGetAndroidHardwareBufferPropertiesANDROID_placeholder = 0;
# endif /*VK_USE_PLATFORM_ANDROID_KHR*/
PFN_vkGetBufferDeviceAddress vkGetBufferDeviceAddress = 0;
PFN_vkGetBufferDeviceAddressEXT vkGetBufferDeviceAddressEXT = 0;
@ -1548,6 +1624,8 @@ namespace VULKAN_HPP_NAMESPACE
PFN_vkGetDeviceGroupPresentCapabilitiesKHR vkGetDeviceGroupPresentCapabilitiesKHR = 0;
# if defined( VK_USE_PLATFORM_WIN32_KHR )
PFN_vkGetDeviceGroupSurfacePresentModes2EXT vkGetDeviceGroupSurfacePresentModes2EXT = 0;
# else
PFN_dummy vkGetDeviceGroupSurfacePresentModes2EXT_placeholder = 0;
# endif /*VK_USE_PLATFORM_WIN32_KHR*/
PFN_vkGetDeviceGroupSurfacePresentModesKHR vkGetDeviceGroupSurfacePresentModesKHR = 0;
PFN_vkGetDeviceMemoryCommitment vkGetDeviceMemoryCommitment = 0;
@ -1562,6 +1640,8 @@ namespace VULKAN_HPP_NAMESPACE
PFN_vkGetFenceStatus vkGetFenceStatus = 0;
# if defined( VK_USE_PLATFORM_WIN32_KHR )
PFN_vkGetFenceWin32HandleKHR vkGetFenceWin32HandleKHR = 0;
# else
PFN_dummy vkGetFenceWin32HandleKHR_placeholder = 0;
# endif /*VK_USE_PLATFORM_WIN32_KHR*/
PFN_vkGetGeneratedCommandsMemoryRequirementsNV vkGetGeneratedCommandsMemoryRequirementsNV = 0;
PFN_vkGetImageDrmFormatModifierPropertiesEXT vkGetImageDrmFormatModifierPropertiesEXT = 0;
@ -1576,6 +1656,8 @@ namespace VULKAN_HPP_NAMESPACE
PFN_vkGetImageViewHandleNVX vkGetImageViewHandleNVX = 0;
# if defined( VK_USE_PLATFORM_ANDROID_KHR )
PFN_vkGetMemoryAndroidHardwareBufferANDROID vkGetMemoryAndroidHardwareBufferANDROID = 0;
# else
PFN_dummy vkGetMemoryAndroidHardwareBufferANDROID_placeholder = 0;
# endif /*VK_USE_PLATFORM_ANDROID_KHR*/
PFN_vkGetMemoryFdKHR vkGetMemoryFdKHR = 0;
PFN_vkGetMemoryFdPropertiesKHR vkGetMemoryFdPropertiesKHR = 0;
@ -1583,18 +1665,28 @@ namespace VULKAN_HPP_NAMESPACE
PFN_vkGetMemoryRemoteAddressNV vkGetMemoryRemoteAddressNV = 0;
# if defined( VK_USE_PLATFORM_WIN32_KHR )
PFN_vkGetMemoryWin32HandleKHR vkGetMemoryWin32HandleKHR = 0;
# else
PFN_dummy vkGetMemoryWin32HandleKHR_placeholder = 0;
# endif /*VK_USE_PLATFORM_WIN32_KHR*/
# if defined( VK_USE_PLATFORM_WIN32_KHR )
PFN_vkGetMemoryWin32HandleNV vkGetMemoryWin32HandleNV = 0;
# else
PFN_dummy vkGetMemoryWin32HandleNV_placeholder = 0;
# endif /*VK_USE_PLATFORM_WIN32_KHR*/
# if defined( VK_USE_PLATFORM_WIN32_KHR )
PFN_vkGetMemoryWin32HandlePropertiesKHR vkGetMemoryWin32HandlePropertiesKHR = 0;
# else
PFN_dummy vkGetMemoryWin32HandlePropertiesKHR_placeholder = 0;
# endif /*VK_USE_PLATFORM_WIN32_KHR*/
# if defined( VK_USE_PLATFORM_FUCHSIA )
PFN_vkGetMemoryZirconHandleFUCHSIA vkGetMemoryZirconHandleFUCHSIA = 0;
# else
PFN_dummy vkGetMemoryZirconHandleFUCHSIA_placeholder = 0;
# endif /*VK_USE_PLATFORM_FUCHSIA*/
# if defined( VK_USE_PLATFORM_FUCHSIA )
PFN_vkGetMemoryZirconHandlePropertiesFUCHSIA vkGetMemoryZirconHandlePropertiesFUCHSIA = 0;
# else
PFN_dummy vkGetMemoryZirconHandlePropertiesFUCHSIA_placeholder = 0;
# endif /*VK_USE_PLATFORM_FUCHSIA*/
PFN_vkGetPastPresentationTimingGOOGLE vkGetPastPresentationTimingGOOGLE = 0;
PFN_vkGetPerformanceParameterINTEL vkGetPerformanceParameterINTEL = 0;
@ -1617,9 +1709,13 @@ namespace VULKAN_HPP_NAMESPACE
PFN_vkGetSemaphoreFdKHR vkGetSemaphoreFdKHR = 0;
# if defined( VK_USE_PLATFORM_WIN32_KHR )
PFN_vkGetSemaphoreWin32HandleKHR vkGetSemaphoreWin32HandleKHR = 0;
# else
PFN_dummy vkGetSemaphoreWin32HandleKHR_placeholder = 0;
# endif /*VK_USE_PLATFORM_WIN32_KHR*/
# if defined( VK_USE_PLATFORM_FUCHSIA )
PFN_vkGetSemaphoreZirconHandleFUCHSIA vkGetSemaphoreZirconHandleFUCHSIA = 0;
# else
PFN_dummy vkGetSemaphoreZirconHandleFUCHSIA_placeholder = 0;
# endif /*VK_USE_PLATFORM_FUCHSIA*/
PFN_vkGetShaderInfoAMD vkGetShaderInfoAMD = 0;
PFN_vkGetSwapchainCounterEXT vkGetSwapchainCounterEXT = 0;
@ -1628,17 +1724,25 @@ namespace VULKAN_HPP_NAMESPACE
PFN_vkGetValidationCacheDataEXT vkGetValidationCacheDataEXT = 0;
# if defined( VK_ENABLE_BETA_EXTENSIONS )
PFN_vkGetVideoSessionMemoryRequirementsKHR vkGetVideoSessionMemoryRequirementsKHR = 0;
# else
PFN_dummy vkGetVideoSessionMemoryRequirementsKHR_placeholder = 0;
# endif /*VK_ENABLE_BETA_EXTENSIONS*/
PFN_vkImportFenceFdKHR vkImportFenceFdKHR = 0;
# if defined( VK_USE_PLATFORM_WIN32_KHR )
PFN_vkImportFenceWin32HandleKHR vkImportFenceWin32HandleKHR = 0;
# else
PFN_dummy vkImportFenceWin32HandleKHR_placeholder = 0;
# endif /*VK_USE_PLATFORM_WIN32_KHR*/
PFN_vkImportSemaphoreFdKHR vkImportSemaphoreFdKHR = 0;
# if defined( VK_USE_PLATFORM_WIN32_KHR )
PFN_vkImportSemaphoreWin32HandleKHR vkImportSemaphoreWin32HandleKHR = 0;
# else
PFN_dummy vkImportSemaphoreWin32HandleKHR_placeholder = 0;
# endif /*VK_USE_PLATFORM_WIN32_KHR*/
# if defined( VK_USE_PLATFORM_FUCHSIA )
PFN_vkImportSemaphoreZirconHandleFUCHSIA vkImportSemaphoreZirconHandleFUCHSIA = 0;
# else
PFN_dummy vkImportSemaphoreZirconHandleFUCHSIA_placeholder = 0;
# endif /*VK_USE_PLATFORM_FUCHSIA*/
PFN_vkInitializePerformanceApiINTEL vkInitializePerformanceApiINTEL = 0;
PFN_vkInvalidateMappedMemoryRanges vkInvalidateMappedMemoryRanges = 0;
@ -1658,6 +1762,8 @@ namespace VULKAN_HPP_NAMESPACE
PFN_vkRegisterDisplayEventEXT vkRegisterDisplayEventEXT = 0;
# if defined( VK_USE_PLATFORM_WIN32_KHR )
PFN_vkReleaseFullScreenExclusiveModeEXT vkReleaseFullScreenExclusiveModeEXT = 0;
# else
PFN_dummy vkReleaseFullScreenExclusiveModeEXT_placeholder = 0;
# endif /*VK_USE_PLATFORM_WIN32_KHR*/
PFN_vkReleasePerformanceConfigurationINTEL vkReleasePerformanceConfigurationINTEL = 0;
PFN_vkReleaseProfilingLockKHR vkReleaseProfilingLockKHR = 0;
@ -1685,6 +1791,8 @@ namespace VULKAN_HPP_NAMESPACE
PFN_vkUpdateDescriptorSets vkUpdateDescriptorSets = 0;
# if defined( VK_ENABLE_BETA_EXTENSIONS )
PFN_vkUpdateVideoSessionParametersKHR vkUpdateVideoSessionParametersKHR = 0;
# else
PFN_dummy vkUpdateVideoSessionParametersKHR_placeholder = 0;
# endif /*VK_ENABLE_BETA_EXTENSIONS*/
PFN_vkWaitForFences vkWaitForFences = 0;
PFN_vkWaitForPresentKHR vkWaitForPresentKHR = 0;