mirror of
https://github.com/seekrs/MacroLibX.git
synced 2026-06-03 15:18:15 +02:00
Compare commits
28 Commits
v2.2.6
..
b090a070c8
| Author | SHA1 | Date | |
|---|---|---|---|
|
b090a070c8
|
|||
| 069f8af9d6 | |||
| 8b952f14c5 | |||
| cfc3fccac4 | |||
| f691ce6890 | |||
| fb0eecde00 | |||
| f65b8a2aef | |||
|
552cc33ba3
|
|||
| d1f5b7c68e | |||
| e3ab91c7eb | |||
| 6f0beebdf9 | |||
| f9f4fc6425 | |||
| 59b3a297f9 | |||
| 790e24ebdb | |||
| 3a2563a7f5 | |||
| cf491fc56d | |||
| 492365f6dd | |||
| 564942ad35 | |||
| 2751206578 | |||
| 002c35ccdb | |||
| 36e63bbbe7 | |||
| 3a11c1d350 | |||
| 74613d230f | |||
| f1e89ca90e | |||
| 1566fbfc00 | |||
| 6c1400e62c | |||
| 25fb5285f7 | |||
| 87059f8ca3 |
+17
-18
@@ -1,12 +1,15 @@
|
||||
project('MacroLibX',
|
||||
['c', 'cpp'],
|
||||
version : '2.2.4',
|
||||
version : '2.3.0',
|
||||
license : 'MIT',
|
||||
meson_version : '>= 1.9.0',
|
||||
default_options : ['warning_level=2', 'optimization=3', 'cpp_std=c++20'])
|
||||
meson_version : '>= 0.63.0',
|
||||
default_options : [
|
||||
'warning_level=2',
|
||||
'optimization=3',
|
||||
'cpp_std=c++20',
|
||||
]
|
||||
)
|
||||
|
||||
add_project_arguments('-Wno-error=', language : 'c')
|
||||
add_project_arguments('-fPIC', language : 'c')
|
||||
add_project_arguments('-DSDL_MAIN_HANDLED', language : 'c')
|
||||
|
||||
if get_option('graphics_memory_dump')
|
||||
@@ -25,15 +28,14 @@ if get_option('disable_all_safeties')
|
||||
add_project_arguments('-DDISABLE_ALL_SAFETIES', language : 'c')
|
||||
endif
|
||||
|
||||
includes_directories = [
|
||||
include_directories('includes'),
|
||||
include_directories('runtime/Includes'),
|
||||
include_directories('runtime/Sources'),
|
||||
include_directories('third_party'),
|
||||
]
|
||||
includes_directories = include_directories(
|
||||
'includes',
|
||||
'runtime/Includes',
|
||||
'runtime/Sources',
|
||||
'third_party',
|
||||
)
|
||||
|
||||
sources = [
|
||||
files(
|
||||
sources = files(
|
||||
'runtime/Sources/Core/Application.cpp',
|
||||
'runtime/Sources/Core/Bridge.cpp',
|
||||
'runtime/Sources/Core/EventBus.cpp',
|
||||
@@ -66,9 +68,8 @@ sources = [
|
||||
'runtime/Sources/Renderer/RenderCore.cpp',
|
||||
'runtime/Sources/Renderer/Renderer.cpp',
|
||||
'runtime/Sources/Renderer/SceneRenderer.cpp',
|
||||
'runtime/Sources/Renderer/Swapchain.cpp'
|
||||
'runtime/Sources/Renderer/Swapchain.cpp',
|
||||
)
|
||||
]
|
||||
|
||||
mlx_headers = [
|
||||
'includes/mlx.h',
|
||||
@@ -78,9 +79,7 @@ mlx_headers = [
|
||||
|
||||
install_headers(mlx_headers)
|
||||
|
||||
deps = [
|
||||
dependency('sdl2'),
|
||||
]
|
||||
deps = dependency('sdl2')
|
||||
|
||||
libmlx = library('mlx',
|
||||
sources,
|
||||
|
||||
@@ -47,7 +47,6 @@ namespace mlx
|
||||
|
||||
std::unordered_map<std::string, std::pair<std::size_t, ProfileResult>> m_profile_data;
|
||||
std::ofstream m_output_stream;
|
||||
std::mutex m_mutex;
|
||||
bool m_runtime_session_began = false;
|
||||
};
|
||||
|
||||
|
||||
@@ -20,7 +20,6 @@ namespace mlx
|
||||
void SetInputBinding(std::function<void(SDL_Event*)> functor);
|
||||
|
||||
VkSurfaceKHR CreateVulkanSurface(Handle window, VkInstance instance) const noexcept;
|
||||
std::vector<const char*> GetRequiredVulkanInstanceExtentions(Handle window) const noexcept;
|
||||
Vec2ui GetVulkanDrawableSize(Handle window) const noexcept;
|
||||
void MoveMouseOnWindow(Handle window, int x, int y) const noexcept;
|
||||
void GetScreenSizeWindowIsOn(Handle window, int* x, int* y) const noexcept;
|
||||
|
||||
@@ -35,7 +35,6 @@ namespace mlx
|
||||
MLX_FORCEINLINE void GetSize(int* x, int* y) { *x = GetWidth(); *y = GetHeight(); }
|
||||
|
||||
MLX_FORCEINLINE VkSurfaceKHR CreateVulkanSurface(VkInstance instance) const noexcept { return SDLManager::Get().CreateVulkanSurface(p_window, instance); }
|
||||
MLX_FORCEINLINE std::vector<const char*> GetRequiredVulkanInstanceExtentions() const noexcept { return SDLManager::Get().GetRequiredVulkanInstanceExtentions(p_window); }
|
||||
MLX_FORCEINLINE Vec2ui GetVulkanDrawableSize() const noexcept { return SDLManager::Get().GetVulkanDrawableSize(p_window); }
|
||||
|
||||
[[nodiscard]] inline Handle GetRawHandle() const noexcept { return p_window; }
|
||||
|
||||
@@ -25,12 +25,12 @@
|
||||
#error Failed to find SDL2 headers
|
||||
#endif
|
||||
|
||||
#if __has_include(<SDL2/SDL_vulkan.h>)
|
||||
#include <SDL2/SDL_vulkan.h>
|
||||
#elif __has_include(<SDL_vulkan.h>)
|
||||
#include <SDL_vulkan.h>
|
||||
#if __has_include(<SDL2/SDL_syswm.h>)
|
||||
#include <SDL2/SDL_syswm.h>
|
||||
#elif __has_include(<SDL_syswm.h>)
|
||||
#include <SDL_syswm.h>
|
||||
#else
|
||||
#error Failed to find SDL2 Vulkan headers
|
||||
#error Failed to find SDL2 SysWMinfo
|
||||
#endif
|
||||
|
||||
#include <functional>
|
||||
|
||||
@@ -123,5 +123,41 @@
|
||||
MLX_VULKAN_INSTANCE_FUNCTION(vkGetPhysicalDeviceSurfaceFormatsKHR)
|
||||
MLX_VULKAN_INSTANCE_FUNCTION(vkGetPhysicalDeviceSurfacePresentModesKHR)
|
||||
MLX_VULKAN_INSTANCE_FUNCTION(vkGetPhysicalDeviceSurfaceSupportKHR)
|
||||
|
||||
#ifdef VK_USE_PLATFORM_ANDROID_KHR
|
||||
#ifdef VK_KHR_android_surface
|
||||
MLX_VULKAN_INSTANCE_FUNCTION(vkCreateAndroidSurfaceKHR)
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#ifdef VK_USE_PLATFORM_XCB_KHR
|
||||
#ifdef VK_KHR_xcb_surface
|
||||
MLX_VULKAN_INSTANCE_FUNCTION(vkCreateXcbSurfaceKHR)
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#ifdef VK_USE_PLATFORM_XLIB_KHR
|
||||
#ifdef VK_KHR_xlib_surface
|
||||
MLX_VULKAN_INSTANCE_FUNCTION(vkCreateXlibSurfaceKHR)
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#ifdef VK_USE_PLATFORM_WAYLAND_KHR
|
||||
#ifdef VK_KHR_wayland_surface
|
||||
MLX_VULKAN_INSTANCE_FUNCTION(vkCreateWaylandSurfaceKHR)
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#ifdef VK_USE_PLATFORM_WIN32_KHR
|
||||
#ifdef VK_KHR_win32_surface
|
||||
MLX_VULKAN_INSTANCE_FUNCTION(vkCreateWin32SurfaceKHR)
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#ifdef VK_USE_PLATFORM_METAL_EXT
|
||||
#ifdef VK_EXT_metal_surface
|
||||
MLX_VULKAN_INSTANCE_FUNCTION(vkCreateMetalSurfaceEXT)
|
||||
#endif
|
||||
#endif
|
||||
#endif
|
||||
#endif
|
||||
|
||||
@@ -238,6 +238,15 @@ extern "C"
|
||||
mlx::Error("Image loader: not a valid file format '%'", filename);
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
{
|
||||
std::ifstream stream(file, std::ios::binary);
|
||||
if(!stream.is_open())
|
||||
{
|
||||
mlx::Error("Image loader: failed to open file '%'", filename);
|
||||
return nullptr;
|
||||
}
|
||||
}
|
||||
return mlx->app->NewStbTexture(filename, width, height);
|
||||
}
|
||||
|
||||
@@ -304,12 +313,29 @@ extern "C"
|
||||
mlx::Error("Font loader: filepath is NULL");
|
||||
return;
|
||||
}
|
||||
|
||||
std::filesystem::path file(filepath);
|
||||
if(std::strcmp(filepath, "default") != 0 && file.extension() != ".ttf" && file.extension() != ".tte")
|
||||
if (std::strcmp(filepath, "default") != 0 && !std::filesystem::exists(file))
|
||||
{
|
||||
mlx::Error("TTF loader: unable to find file '%'", filepath);
|
||||
return;
|
||||
}
|
||||
|
||||
if(std::strcmp(filepath, "default") != 0)
|
||||
{
|
||||
if(file.extension() != ".ttf" && file.extension() != ".tte")
|
||||
{
|
||||
mlx::Error("TTF loader: not a truetype font file '%'", filepath);
|
||||
return;
|
||||
}
|
||||
std::ifstream stream(file, std::ios::binary);
|
||||
if(!stream.is_open())
|
||||
{
|
||||
mlx::Error("TTF loader: failed to open font file '%'", filepath);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
if(std::strcmp(filepath, "default") == 0)
|
||||
mlx->app->LoadFont(file, 6.f);
|
||||
else
|
||||
@@ -324,12 +350,29 @@ extern "C"
|
||||
mlx::Error("Font loader: filepath is NULL");
|
||||
return;
|
||||
}
|
||||
|
||||
std::filesystem::path file(filepath);
|
||||
if(std::strcmp(filepath, "default") != 0 && file.extension() != ".ttf" && file.extension() != ".tte")
|
||||
if (std::strcmp(filepath, "default") != 0 && !std::filesystem::exists(file))
|
||||
{
|
||||
mlx::Error("TTF loader: unable to find file '%'", filepath);
|
||||
return;
|
||||
}
|
||||
|
||||
if(std::strcmp(filepath, "default") != 0)
|
||||
{
|
||||
if(file.extension() != ".ttf" && file.extension() != ".tte")
|
||||
{
|
||||
mlx::Error("TTF loader: not a truetype font file '%'", filepath);
|
||||
return;
|
||||
}
|
||||
std::ifstream stream(file, std::ios::binary);
|
||||
if(!stream.is_open())
|
||||
{
|
||||
mlx::Error("TTF loader: failed to open font file '%'", filepath);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
mlx->app->LoadFont(file, scale);
|
||||
}
|
||||
|
||||
|
||||
@@ -8,7 +8,6 @@ namespace mlx
|
||||
|
||||
void Profiler::BeginRuntimeSession()
|
||||
{
|
||||
std::lock_guard lock(m_mutex);
|
||||
if(m_runtime_session_began)
|
||||
return;
|
||||
m_output_stream.open("./runtime_profile.mlx.json", std::ofstream::out | std::ofstream::trunc);
|
||||
@@ -22,7 +21,6 @@ namespace mlx
|
||||
|
||||
void Profiler::AppendProfileData(ProfileResult&& result)
|
||||
{
|
||||
std::lock_guard lock(m_mutex);
|
||||
auto it = m_profile_data.find(result.name);
|
||||
if(it != m_profile_data.end())
|
||||
{
|
||||
@@ -49,7 +47,6 @@ namespace mlx
|
||||
|
||||
void Profiler::EndRuntimeSession()
|
||||
{
|
||||
std::lock_guard lock(m_mutex);
|
||||
if(!m_runtime_session_began)
|
||||
return;
|
||||
for(auto& [_, pair] : m_profile_data)
|
||||
|
||||
@@ -43,7 +43,7 @@ namespace mlx
|
||||
Internal::WindowInfos* infos = new Internal::WindowInfos;
|
||||
Verify(infos != nullptr, "SDL: window allocation failed");
|
||||
|
||||
std::uint32_t flags = SDL_WINDOW_VULKAN;
|
||||
std::uint32_t flags = 0;
|
||||
if(hidden)
|
||||
flags |= SDL_WINDOW_HIDDEN;
|
||||
else
|
||||
@@ -88,28 +88,38 @@ namespace mlx
|
||||
|
||||
VkSurfaceKHR SDLManager::CreateVulkanSurface(Handle window, VkInstance instance) const noexcept
|
||||
{
|
||||
VkSurfaceKHR surface;
|
||||
if(!SDL_Vulkan_CreateSurface(static_cast<Internal::WindowInfos*>(window)->window, instance, &surface))
|
||||
FatalError("SDL: could not create a Vulkan surface; %", SDL_GetError());
|
||||
return surface;
|
||||
}
|
||||
SDL_SysWMinfo info;
|
||||
SDL_VERSION(&info.version);
|
||||
if(SDL_GetWindowWMInfo(static_cast<Internal::WindowInfos*>(window)->window, &info) != SDL_TRUE)
|
||||
FatalError("SDL Manager: cannot retrieve window informations");
|
||||
|
||||
std::vector<const char*> SDLManager::GetRequiredVulkanInstanceExtentions(Handle window) const noexcept
|
||||
switch(info.subsystem)
|
||||
{
|
||||
std::uint32_t count;
|
||||
if(!SDL_Vulkan_GetInstanceExtensions(static_cast<Internal::WindowInfos*>(window)->window, &count, nullptr))
|
||||
FatalError("SDL Manager: could not retrieve Vulkan instance extensions");
|
||||
std::vector<const char*> extensions(count);
|
||||
if(!SDL_Vulkan_GetInstanceExtensions(static_cast<Internal::WindowInfos*>(window)->window, &count, extensions.data()))
|
||||
FatalError("SDL Manager: could not retrieve Vulkan instance extensions");
|
||||
extensions.push_back(VK_KHR_SURFACE_EXTENSION_NAME);
|
||||
return extensions;
|
||||
#ifdef SDL_VIDEO_DRIVER_WINDOWS
|
||||
case SDL_SYSWM_WINDOWS: return kvfCreateSurfaceKHR(instance, KVF_SURFACE_WINDOWS, static_cast<void*>(info.info.win.hinstance), static_cast<void*>(info.info.win.window));
|
||||
#endif
|
||||
#ifdef SDL_VIDEO_DRIVER_X11
|
||||
case SDL_SYSWM_X11: return kvfCreateSurfaceKHR(instance, KVF_SURFACE_XLIB, static_cast<void*>(info.info.x11.display), static_cast<void*>(&info.info.x11.window));
|
||||
#endif
|
||||
#ifdef SDL_VIDEO_DRIVER_COCOA
|
||||
case SDL_SYSWM_COCOA: FatalError("SDL Manager: Vulkan surfaces over Metal are not supported yet. Please fill an issue here https://github.com/seekrs/MacroLibX/issues/new");
|
||||
#endif
|
||||
#ifdef SDL_VIDEO_DRIVER_WAYLAND
|
||||
case SDL_SYSWM_WAYLAND: return kvfCreateSurfaceKHR(instance, KVF_SURFACE_WAYLAND, static_cast<void*>(info.info.wl.display), static_cast<void*>(info.info.wl.surface));
|
||||
#endif
|
||||
#ifdef SDL_VIDEO_DRIVER_ANDROID
|
||||
case SDL_SYSWM_ANDROID: return kvfCreateSurfaceKHR(instance, KVF_SURFACE_ANDROID, nullptr, static_cast<void*>(info.info.android.window));
|
||||
#endif
|
||||
|
||||
default : FatalError("SDL Manager: unsupported windowing system"); break;
|
||||
}
|
||||
return VK_NULL_HANDLE;
|
||||
}
|
||||
|
||||
Vec2ui SDLManager::GetVulkanDrawableSize(Handle window) const noexcept
|
||||
{
|
||||
Vec2i extent;
|
||||
SDL_Vulkan_GetDrawableSize(static_cast<Internal::WindowInfos*>(window)->window, &extent.x, &extent.y);
|
||||
SDL_GetWindowSize(static_cast<Internal::WindowInfos*>(window)->window, &extent.x, &extent.y);
|
||||
return Vec2ui{ extent };
|
||||
}
|
||||
|
||||
@@ -266,6 +276,7 @@ namespace mlx
|
||||
case SDL_WINDOWEVENT_LEAVE: functor(MLX_WINDOW_EVENT, id, 6); break;
|
||||
case SDL_WINDOWEVENT_FOCUS_LOST: functor(MLX_WINDOW_EVENT, id, 7); break;
|
||||
case SDL_WINDOWEVENT_SIZE_CHANGED: functor(MLX_WINDOW_EVENT, id, 8); break;
|
||||
case SDL_WINDOWEVENT_RESTORED: functor(MLX_WINDOW_EVENT, id, 11); break;
|
||||
|
||||
default : break;
|
||||
}
|
||||
@@ -284,6 +295,7 @@ namespace mlx
|
||||
{
|
||||
if(m_drop_sdl_responsability)
|
||||
return;
|
||||
|
||||
SDL_QuitSubSystem(SDL_INIT_VIDEO | SDL_INIT_TIMER | SDL_INIT_EVENTS);
|
||||
SDL_Quit();
|
||||
s_instance = nullptr;
|
||||
|
||||
@@ -436,13 +436,20 @@ namespace mlx
|
||||
#endif
|
||||
|
||||
if(m_staging_buffer.has_value())
|
||||
{
|
||||
new_texture.OpenCPUBuffer();
|
||||
new_texture.m_staging_buffer->CopyFrom(*m_staging_buffer);
|
||||
}
|
||||
|
||||
// Suboptimal operations, should bake all of them in a single command buffer
|
||||
new_texture.Clear(VK_NULL_HANDLE, Vec4f{ 0.f });
|
||||
CopyTo(new_texture);
|
||||
|
||||
Swap(new_texture);
|
||||
|
||||
#ifdef DEBUG
|
||||
DebugLog("Texture: resized '%'", m_debug_name);
|
||||
#endif
|
||||
}
|
||||
|
||||
void Texture::Swap(Texture& texture) noexcept
|
||||
|
||||
@@ -127,6 +127,9 @@ namespace mlx
|
||||
void GraphicPipeline::Destroy() noexcept
|
||||
{
|
||||
MLX_PROFILE_FUNCTION();
|
||||
if(m_pipeline == VK_NULL_HANDLE)
|
||||
return;
|
||||
|
||||
p_vertex_shader.reset();
|
||||
p_fragment_shader.reset();
|
||||
for(auto fb : m_framebuffers)
|
||||
|
||||
@@ -100,8 +100,25 @@ namespace mlx
|
||||
info.width = 1;
|
||||
info.height = 1;
|
||||
window = std::make_unique<Window>(&info, true);
|
||||
instance_extensions = window->GetRequiredVulkanInstanceExtentions();
|
||||
#ifdef MLX_PLAT_MACOS
|
||||
instance_extensions.push_back(VK_KHR_SURFACE_EXTENSION_NAME);
|
||||
#ifdef VK_USE_PLATFORM_XCB_KHR
|
||||
instance_extensions.push_back(VK_KHR_XCB_SURFACE_EXTENSION_NAME);
|
||||
#endif
|
||||
|
||||
#ifdef VK_USE_PLATFORM_XLIB_KHR
|
||||
instance_extensions.push_back(VK_KHR_XLIB_SURFACE_EXTENSION_NAME);
|
||||
#endif
|
||||
|
||||
#ifdef VK_USE_PLATFORM_WAYLAND_KHR
|
||||
instance_extensions.push_back(VK_KHR_WAYLAND_SURFACE_EXTENSION_NAME);
|
||||
#endif
|
||||
|
||||
#ifdef VK_USE_PLATFORM_WIN32_KHR
|
||||
instance_extensions.push_back(VK_KHR_WIN32_SURFACE_EXTENSION_NAME);
|
||||
#endif
|
||||
|
||||
#ifdef VK_USE_PLATFORM_METAL_EXT
|
||||
instance_extensions.push_back(VK_EXT_METAL_SURFACE_EXTENSION_NAME);
|
||||
instance_extensions.push_back(VK_KHR_PORTABILITY_ENUMERATION_EXTENSION_NAME);
|
||||
#endif
|
||||
}
|
||||
@@ -185,6 +202,41 @@ namespace mlx
|
||||
MLX_LOAD_FUNCTION(vkGetPhysicalDeviceSurfaceFormatsKHR);
|
||||
MLX_LOAD_FUNCTION(vkGetPhysicalDeviceSurfacePresentModesKHR);
|
||||
MLX_LOAD_FUNCTION(vkGetPhysicalDeviceSurfaceSupportKHR);
|
||||
#ifdef VK_USE_PLATFORM_ANDROID_KHR
|
||||
#ifdef VK_KHR_android_surface
|
||||
MLX_LOAD_FUNCTION(vkCreateAndroidSurfaceKHR);
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#ifdef VK_USE_PLATFORM_XCB_KHR
|
||||
#ifdef VK_KHR_xcb_surface
|
||||
MLX_LOAD_FUNCTION(vkCreateXcbSurfaceKHR);
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#ifdef VK_USE_PLATFORM_XLIB_KHR
|
||||
#ifdef VK_KHR_xlib_surface
|
||||
MLX_LOAD_FUNCTION(vkCreateXlibSurfaceKHR);
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#ifdef VK_USE_PLATFORM_WAYLAND_KHR
|
||||
#ifdef VK_KHR_wayland_surface
|
||||
MLX_LOAD_FUNCTION(vkCreateWaylandSurfaceKHR);
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#ifdef VK_USE_PLATFORM_WIN32_KHR
|
||||
#ifdef VK_KHR_win32_surface
|
||||
MLX_LOAD_FUNCTION(vkCreateWin32SurfaceKHR);
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#ifdef VK_USE_PLATFORM_METAL_EXT
|
||||
#ifdef VK_EXT_metal_surface
|
||||
MLX_LOAD_FUNCTION(vkCreateMetalSurfaceEXT);
|
||||
#endif
|
||||
#endif
|
||||
kvfPassInstanceVulkanFunctionPointers(&pfns);
|
||||
}
|
||||
|
||||
|
||||
Vendored
+209
-2
@@ -55,6 +55,46 @@
|
||||
#define VK_NO_PROTOTYPES
|
||||
#endif
|
||||
|
||||
#ifndef KVF_NO_KHR
|
||||
#ifdef VK_USE_PLATFORM_ANDROID_KHR
|
||||
#include <vulkan/vulkan_android.h>
|
||||
#endif
|
||||
|
||||
#ifdef VK_USE_PLATFORM_WAYLAND_KHR
|
||||
#include <vulkan/vulkan_wayland.h>
|
||||
#endif
|
||||
|
||||
#ifdef VK_USE_PLATFORM_WIN32_KHR
|
||||
typedef struct HINSTANCE__* HINSTANCE;
|
||||
typedef struct HWND__* HWND;
|
||||
typedef struct HMONITOR__* HMONITOR;
|
||||
typedef void* HANDLE;
|
||||
typedef /*_Null_terminated_*/ const wchar_t* LPCWSTR;
|
||||
typedef unsigned long DWORD;
|
||||
typedef struct _SECURITY_ATTRIBUTES SECURITY_ATTRIBUTES;
|
||||
#include <vulkan/vulkan_win32.h>
|
||||
#endif
|
||||
|
||||
#ifdef VK_USE_PLATFORM_XCB_KHR
|
||||
struct xcb_connection_t;
|
||||
typedef uint32_t xcb_window_t;
|
||||
typedef uint32_t xcb_visualid_t;
|
||||
#include <vulkan/vulkan_xcb.h>
|
||||
#endif
|
||||
|
||||
#ifdef VK_USE_PLATFORM_METAL_EXT
|
||||
#include <vulkan/vulkan_metal.h>
|
||||
#endif
|
||||
|
||||
#ifdef VK_USE_PLATFORM_XLIB_KHR
|
||||
typedef struct _XDisplay Display;
|
||||
typedef unsigned long XID;
|
||||
typedef XID Window;
|
||||
typedef unsigned long VisualID;
|
||||
#include <vulkan/vulkan_xlib.h>
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#include <vulkan/vulkan_core.h>
|
||||
|
||||
#include <stdint.h>
|
||||
@@ -82,6 +122,18 @@ typedef enum
|
||||
KVF_IMAGE_OTHER = 4,
|
||||
} KvfImageType;
|
||||
|
||||
#ifndef KVF_NO_KHR
|
||||
typedef enum
|
||||
{
|
||||
KVF_SURFACE_ANDROID = 0,
|
||||
KVF_SURFACE_XLIB = 1,
|
||||
KVF_SURFACE_XCB = 2,
|
||||
KVF_SURFACE_WAYLAND = 3,
|
||||
KVF_SURFACE_WINDOWS = 4,
|
||||
KVF_SURFACE_METAL = 5,
|
||||
} KvfSurfaceType;
|
||||
#endif
|
||||
|
||||
typedef void (*KvfErrorCallback)(const char* message);
|
||||
|
||||
#ifdef KVF_IMPL_VK_NO_PROTOTYPES
|
||||
@@ -148,6 +200,33 @@ void kvfDestroySemaphore(VkDevice device, VkSemaphore semaphore);
|
||||
uint32_t kvfGetSwapchainMinImagesCount(VkSwapchainKHR swapchain);
|
||||
VkExtent2D kvfGetSwapchainImagesSize(VkSwapchainKHR swapchain);
|
||||
void kvfDestroySwapchainKHR(VkDevice device, VkSwapchainKHR swapchain);
|
||||
|
||||
/**
|
||||
* For Windows:
|
||||
* - instance_handle -> HINSTANCE
|
||||
* - window_handle -> HWND window handle
|
||||
*
|
||||
* For Wayland:
|
||||
* - instance_handle -> wl_display
|
||||
* - window_handle -> wl_surface
|
||||
*
|
||||
* For XLIB:
|
||||
* - instance_handle -> Display
|
||||
* - window_handle -> Window
|
||||
*
|
||||
* For XCB:
|
||||
* - instance_handle -> xcb_connection_t
|
||||
* - window_handle -> xcb_window_t
|
||||
*
|
||||
* For Metal:
|
||||
* - instance_handle -> ignored
|
||||
* - window_handle -> CAMetalLayer
|
||||
*
|
||||
* For Android:
|
||||
* - instance_handle -> ignored
|
||||
* - window_handle -> ANativeWindow
|
||||
*/
|
||||
VkSurfaceKHR kvfCreateSurfaceKHR(VkInstance instance, KvfSurfaceType type, void* instance_handle, void* window_handle);
|
||||
#endif
|
||||
|
||||
VkImage kvfCreateImage(VkDevice device, uint32_t width, uint32_t height, VkFormat format, VkImageTiling tiling, VkImageUsageFlags usage, KvfImageType type);
|
||||
@@ -272,6 +351,42 @@ int32_t kvfFindMemoryType(VkPhysicalDevice physical_device, uint32_t type_filter
|
||||
KVF_DEFINE_VULKAN_FUNCTION_PROTOTYPE(vkGetPhysicalDeviceSurfaceFormatsKHR);
|
||||
KVF_DEFINE_VULKAN_FUNCTION_PROTOTYPE(vkGetPhysicalDeviceSurfacePresentModesKHR);
|
||||
KVF_DEFINE_VULKAN_FUNCTION_PROTOTYPE(vkGetPhysicalDeviceSurfaceSupportKHR);
|
||||
|
||||
#ifdef VK_USE_PLATFORM_ANDROID_KHR
|
||||
#ifdef VK_KHR_android_surface
|
||||
KVF_DEFINE_VULKAN_FUNCTION_PROTOTYPE(vkCreateAndroidSurfaceKHR);
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#ifdef VK_USE_PLATFORM_XCB_KHR
|
||||
#ifdef VK_KHR_xcb_surface
|
||||
KVF_DEFINE_VULKAN_FUNCTION_PROTOTYPE(vkCreateXcbSurfaceKHR);
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#ifdef VK_USE_PLATFORM_XLIB_KHR
|
||||
#ifdef VK_KHR_xlib_surface
|
||||
KVF_DEFINE_VULKAN_FUNCTION_PROTOTYPE(vkCreateXlibSurfaceKHR);
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#ifdef VK_USE_PLATFORM_WAYLAND_KHR
|
||||
#ifdef VK_KHR_wayland_surface
|
||||
KVF_DEFINE_VULKAN_FUNCTION_PROTOTYPE(vkCreateWaylandSurfaceKHR);
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#ifdef VK_USE_PLATFORM_WIN32_KHR
|
||||
#ifdef VK_KHR_win32_surface
|
||||
KVF_DEFINE_VULKAN_FUNCTION_PROTOTYPE(vkCreateWin32SurfaceKHR);
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#ifdef VK_USE_PLATFORM_METAL_EXT
|
||||
#ifdef VK_EXT_metal_surface
|
||||
KVF_DEFINE_VULKAN_FUNCTION_PROTOTYPE(vkCreateMetalSurfaceEXT);
|
||||
#endif
|
||||
#endif
|
||||
#endif
|
||||
};
|
||||
|
||||
@@ -2093,6 +2208,98 @@ void kvfDestroySemaphore(VkDevice device, VkSemaphore semaphore)
|
||||
KVF_ASSERT(device != VK_NULL_HANDLE);
|
||||
__kvfDestroySwapchain(device, swapchain);
|
||||
}
|
||||
|
||||
VkSurfaceKHR kvfCreateSurfaceKHR(VkInstance instance, KvfSurfaceType type, void* instance_handle, void* window_handle)
|
||||
{
|
||||
VkSurfaceKHR surface = VK_NULL_HANDLE;
|
||||
switch(type)
|
||||
{
|
||||
#ifdef VK_USE_PLATFORM_ANDROID_KHR
|
||||
case KVF_SURFACE_ANDROID:
|
||||
{
|
||||
VkAndroidSurfaceCreateInfoKHR create_info = {};
|
||||
create_info.sType = VK_STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR;
|
||||
create_info.pNext = nullptr;
|
||||
create_info.flags = 0;
|
||||
create_info.window = (ANativeWindow*)window_handle;
|
||||
kvfCheckVk(KVF_GET_INSTANCE_FUNCTION(vkCreateAndroidSurfaceKHR)(instance, &create_info, NULL, &surface));
|
||||
break;
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifdef VK_USE_PLATFORM_XLIB_KHR
|
||||
case KVF_SURFACE_XLIB:
|
||||
{
|
||||
VkXlibSurfaceCreateInfoKHR create_info = {};
|
||||
create_info.sType = VK_STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR;
|
||||
create_info.pNext = nullptr;
|
||||
create_info.flags = 0;
|
||||
create_info.dpy = (Display*)instance_handle;
|
||||
create_info.window = *(Window*)window_handle;
|
||||
kvfCheckVk(KVF_GET_INSTANCE_FUNCTION(vkCreateXlibSurfaceKHR)(instance, &create_info, NULL, &surface));
|
||||
break;
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifdef VK_USE_PLATFORM_XCB_KHR
|
||||
case KVF_SURFACE_XCB:
|
||||
{
|
||||
VkXcbSurfaceCreateInfoKHR create_info = {};
|
||||
create_info.sType = VK_STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR;
|
||||
create_info.pNext = nullptr;
|
||||
create_info.flags = 0;
|
||||
create_info.connection = (xcb_connection_t*)instance_handle;
|
||||
create_info.window = (*xcb_window_t*)window_handle;
|
||||
kvfCheckVk(KVF_GET_INSTANCE_FUNCTION(vkCreateXcbSurfaceKHR)(instance, &create_info, NULL, &surface));
|
||||
break;
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifdef VK_USE_PLATFORM_WAYLAND_KHR
|
||||
case KVF_SURFACE_WAYLAND:
|
||||
{
|
||||
VkWaylandSurfaceCreateInfoKHR create_info = {};
|
||||
create_info.sType = VK_STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR;
|
||||
create_info.pNext = nullptr;
|
||||
create_info.flags = 0;
|
||||
create_info.display = (wl_display*)instance_handle;
|
||||
create_info.surface = (wl_surface*)window_handle;
|
||||
kvfCheckVk(KVF_GET_INSTANCE_FUNCTION(vkCreateWaylandSurfaceKHR)(instance, &create_info, NULL, &surface));
|
||||
break;
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifdef VK_USE_PLATFORM_WIN32_KHR
|
||||
case KVF_SURFACE_WINDOWS:
|
||||
{
|
||||
VkWin32SurfaceCreateInfoKHR create_info = {};
|
||||
create_info.sType = VK_STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR;
|
||||
create_info.pNext = nullptr;
|
||||
create_info.flags = 0;
|
||||
create_info.hinstance = (HINSTANCE)instance_handle;
|
||||
create_info.hwnd = (HWND)window_handle;
|
||||
kvfCheckVk(KVF_GET_INSTANCE_FUNCTION(vkCreateWin32SurfaceKHR)(instance, &create_info, NULL, &surface));
|
||||
break;
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifdef VK_USE_PLATFORM_METAL_EXT
|
||||
case KVF_SURFACE_METAL:
|
||||
{
|
||||
VkMetalSurfaceCreateInfoEXT create_info = {};
|
||||
create_info.sType = VK_STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT;
|
||||
create_info.pNext = nullptr;
|
||||
create_info.flags = 0;
|
||||
create_info.pLayer = (CAMetalLayer*)window_handle;
|
||||
kvfCheckVk(KVF_GET_INSTANCE_FUNCTION(vkCreateMetalSurfaceEXT)(instance, &create_info, NULL, &surface));
|
||||
break;
|
||||
}
|
||||
#endif
|
||||
|
||||
default: break;
|
||||
}
|
||||
return surface;
|
||||
}
|
||||
#endif
|
||||
|
||||
VkImage kvfCreateImage(VkDevice device, uint32_t width, uint32_t height, VkFormat format, VkImageTiling tiling, VkImageUsageFlags usage, KvfImageType type)
|
||||
@@ -2969,7 +3176,7 @@ void kvfGPipelineBuilderEnableAdditiveBlending(KvfGraphicsPipelineBuilder* build
|
||||
builder->color_blend_attachment_state.dstColorBlendFactor = VK_BLEND_FACTOR_ONE;
|
||||
builder->color_blend_attachment_state.colorBlendOp = VK_BLEND_OP_ADD;
|
||||
builder->color_blend_attachment_state.srcAlphaBlendFactor = VK_BLEND_FACTOR_ONE;
|
||||
builder->color_blend_attachment_state.dstAlphaBlendFactor = VK_BLEND_FACTOR_ZERO;
|
||||
builder->color_blend_attachment_state.dstAlphaBlendFactor = VK_BLEND_FACTOR_ONE_MINUS_SRC_ALPHA;
|
||||
builder->color_blend_attachment_state.alphaBlendOp = VK_BLEND_OP_ADD;
|
||||
}
|
||||
|
||||
@@ -2982,7 +3189,7 @@ void kvfGPipelineBuilderEnableAlphaBlending(KvfGraphicsPipelineBuilder* builder)
|
||||
builder->color_blend_attachment_state.dstColorBlendFactor = VK_BLEND_FACTOR_ONE_MINUS_SRC_ALPHA;
|
||||
builder->color_blend_attachment_state.colorBlendOp = VK_BLEND_OP_ADD;
|
||||
builder->color_blend_attachment_state.srcAlphaBlendFactor = VK_BLEND_FACTOR_ONE;
|
||||
builder->color_blend_attachment_state.dstAlphaBlendFactor = VK_BLEND_FACTOR_ZERO;
|
||||
builder->color_blend_attachment_state.dstAlphaBlendFactor = VK_BLEND_FACTOR_ONE_MINUS_SRC_ALPHA;
|
||||
builder->color_blend_attachment_state.alphaBlendOp = VK_BLEND_OP_ADD;
|
||||
}
|
||||
|
||||
|
||||
Vendored
+95
-9615
File diff suppressed because it is too large
Load Diff
Vendored
+2929
-1419
File diff suppressed because it is too large
Load Diff
Vendored
+2035
-594
File diff suppressed because it is too large
Load Diff
Vendored
+1215
-401
File diff suppressed because it is too large
Load Diff
+236
-63
@@ -16,7 +16,13 @@
|
||||
# include <vulkan/vulkan.hpp>
|
||||
#endif
|
||||
|
||||
namespace VULKAN_HPP_NAMESPACE
|
||||
#if defined( VULKAN_HPP_CXX_MODULE )
|
||||
# define VULKAN_HPP_EXPORT export
|
||||
#else
|
||||
# define VULKAN_HPP_EXPORT
|
||||
#endif
|
||||
|
||||
VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
|
||||
{
|
||||
//======================================
|
||||
//=== Extension inspection functions ===
|
||||
@@ -44,7 +50,7 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
|
||||
VULKAN_HPP_INLINE std::map<std::string, std::string> const & getDeprecatedExtensions()
|
||||
{
|
||||
static const std::map<std::string, std::string> deprecatedExtensions = { { "VK_EXT_debug_report", "VK_EXT_debug_utils" },
|
||||
static std::map<std::string, std::string> const deprecatedExtensions = { { "VK_EXT_debug_report", "VK_EXT_debug_utils" },
|
||||
{ "VK_NV_glsl_shader", "" },
|
||||
{ "VK_NV_dedicated_allocation", "VK_KHR_dedicated_allocation" },
|
||||
{ "VK_AMD_gpu_shader_half_float", "VK_KHR_shader_float16_int8" },
|
||||
@@ -69,15 +75,15 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
{ "VK_EXT_validation_features", "VK_EXT_layer_settings" },
|
||||
{ "VK_EXT_descriptor_buffer", "VK_EXT_descriptor_heap" },
|
||||
#if defined( VK_ENABLE_BETA_EXTENSIONS )
|
||||
{ "VK_NV_displacement_micromap", "VK_NV_cluster_acceleration_structure" }
|
||||
{ "VK_NV_displacement_micromap", "VK_NV_cluster_acceleration_structure" },
|
||||
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
|
||||
};
|
||||
{ "VK_NV_per_stage_descriptor_set", "VK_EXT_descriptor_heap" } };
|
||||
return deprecatedExtensions;
|
||||
}
|
||||
|
||||
VULKAN_HPP_INLINE std::set<std::string> const & getDeviceExtensions()
|
||||
{
|
||||
static const std::set<std::string> deviceExtensions = { "VK_KHR_swapchain",
|
||||
static std::set<std::string> const deviceExtensions = { "VK_KHR_swapchain",
|
||||
"VK_KHR_display_swapchain",
|
||||
"VK_NV_glsl_shader",
|
||||
"VK_EXT_depth_range_unrestricted",
|
||||
@@ -173,6 +179,7 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
"VK_EXT_sampler_filter_minmax",
|
||||
"VK_KHR_storage_buffer_storage_class",
|
||||
"VK_AMD_gpu_shader_int16",
|
||||
"VK_AMD_gpa_interface",
|
||||
#if defined( VK_ENABLE_BETA_EXTENSIONS )
|
||||
"VK_AMDX_shader_enqueue",
|
||||
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
|
||||
@@ -212,6 +219,7 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
"VK_EXT_filter_cubic",
|
||||
"VK_QCOM_render_pass_shader_resolve",
|
||||
"VK_QCOM_cooperative_matrix_conversion",
|
||||
"VK_QCOM_elapsed_timer_query",
|
||||
"VK_EXT_global_priority",
|
||||
"VK_KHR_shader_subgroup_extended_types",
|
||||
"VK_KHR_8bit_storage",
|
||||
@@ -257,7 +265,9 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
"VK_KHR_fragment_shading_rate",
|
||||
"VK_AMD_shader_core_properties2",
|
||||
"VK_AMD_device_coherent_memory",
|
||||
"VK_KHR_shader_constant_data",
|
||||
"VK_KHR_dynamic_rendering_local_read",
|
||||
"VK_KHR_shader_abort",
|
||||
"VK_EXT_shader_image_atomic_int64",
|
||||
"VK_KHR_shader_quad_control",
|
||||
"VK_KHR_spirv_1_4",
|
||||
@@ -312,6 +322,10 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
"VK_KHR_video_encode_queue",
|
||||
"VK_NV_device_diagnostics_config",
|
||||
"VK_QCOM_render_pass_store_ops",
|
||||
"VK_QCOM_queue_perf_hint",
|
||||
"VK_QCOM_image_processing3",
|
||||
"VK_QCOM_shader_multiple_wait_queues",
|
||||
"VK_EXT_shader_split_barrier",
|
||||
#if defined( VK_ENABLE_BETA_EXTENSIONS )
|
||||
"VK_NV_cuda_kernel_launch",
|
||||
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
|
||||
@@ -322,6 +336,7 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
#endif /*VK_USE_PLATFORM_METAL_EXT*/
|
||||
"VK_KHR_synchronization2",
|
||||
"VK_EXT_descriptor_buffer",
|
||||
"VK_KHR_device_address_commands",
|
||||
"VK_EXT_graphics_pipeline_library",
|
||||
"VK_AMD_shader_early_and_late_fragment_tests",
|
||||
"VK_KHR_fragment_shader_barycentric",
|
||||
@@ -443,6 +458,7 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
"VK_NV_low_latency2",
|
||||
"VK_KHR_cooperative_matrix",
|
||||
"VK_ARM_data_graph",
|
||||
"VK_ARM_data_graph_instruction_set_tosa",
|
||||
"VK_QCOM_multiview_per_view_render_areas",
|
||||
"VK_KHR_compute_shader_derivatives",
|
||||
"VK_KHR_video_decode_av1",
|
||||
@@ -486,6 +502,7 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
"VK_NV_cluster_acceleration_structure",
|
||||
"VK_NV_partitioned_acceleration_structure",
|
||||
"VK_EXT_device_generated_commands",
|
||||
"VK_KHR_device_fault",
|
||||
"VK_KHR_maintenance8",
|
||||
"VK_MESA_image_alignment_control",
|
||||
"VK_KHR_shader_fma",
|
||||
@@ -502,31 +519,37 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
#endif /*VK_USE_PLATFORM_METAL_EXT*/
|
||||
"VK_KHR_depth_clamp_zero_one",
|
||||
"VK_ARM_performance_counters_by_region",
|
||||
"VK_ARM_shader_instrumentation",
|
||||
"VK_EXT_vertex_attribute_robustness",
|
||||
"VK_ARM_format_pack",
|
||||
"VK_VALVE_fragment_density_map_layered",
|
||||
"VK_KHR_robustness2",
|
||||
#if defined( VK_ENABLE_BETA_EXTENSIONS )
|
||||
"VK_NV_present_metering",
|
||||
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
|
||||
"VK_EXT_fragment_density_map_offset",
|
||||
"VK_EXT_zero_initialize_device_memory",
|
||||
"VK_KHR_present_mode_fifo_latest_ready",
|
||||
"VK_KHR_opacity_micromap",
|
||||
"VK_EXT_shader_64bit_indexing",
|
||||
"VK_EXT_custom_resolve",
|
||||
"VK_QCOM_data_graph_model",
|
||||
"VK_KHR_maintenance10",
|
||||
"VK_ARM_data_graph_optical_flow",
|
||||
"VK_EXT_shader_long_vector",
|
||||
"VK_SEC_pipeline_cache_incremental_mode",
|
||||
"VK_EXT_shader_uniform_buffer_unsized_array",
|
||||
"VK_NV_compute_occupancy_priority",
|
||||
"VK_EXT_shader_subgroup_partitioned" };
|
||||
"VK_KHR_maintenance11",
|
||||
"VK_EXT_shader_subgroup_partitioned",
|
||||
"VK_VALVE_shader_mixed_float_dot_product",
|
||||
"VK_SEC_throttle_hint",
|
||||
"VK_ARM_data_graph_neural_accelerator_statistics",
|
||||
"VK_EXT_primitive_restart_index" };
|
||||
return deviceExtensions;
|
||||
}
|
||||
|
||||
VULKAN_HPP_INLINE std::set<std::string> const & getInstanceExtensions()
|
||||
{
|
||||
static const std::set<std::string> instanceExtensions = { "VK_KHR_surface",
|
||||
static std::set<std::string> const instanceExtensions = { "VK_KHR_surface",
|
||||
"VK_KHR_display",
|
||||
#if defined( VK_USE_PLATFORM_XLIB_KHR )
|
||||
"VK_KHR_xlib_surface",
|
||||
@@ -596,16 +619,19 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
"VK_EXT_layer_settings",
|
||||
"VK_NV_display_stereo",
|
||||
#if defined( VK_USE_PLATFORM_OHOS )
|
||||
"VK_OHOS_surface"
|
||||
"VK_OHOS_surface",
|
||||
#endif /*VK_USE_PLATFORM_OHOS*/
|
||||
#if defined( VK_USE_PLATFORM_UBM_SEC )
|
||||
"VK_SEC_ubm_surface"
|
||||
#endif /*VK_USE_PLATFORM_UBM_SEC*/
|
||||
};
|
||||
return instanceExtensions;
|
||||
}
|
||||
|
||||
VULKAN_HPP_INLINE std::map<std::string, std::vector<std::vector<std::string>>> const & getExtensionDepends( std::string const & extension )
|
||||
{
|
||||
static const std::map<std::string, std::vector<std::vector<std::string>>> noDependencies;
|
||||
static const std::map<std::string, std::map<std::string, std::vector<std::vector<std::string>>>> dependencies = {
|
||||
static std::map<std::string, std::vector<std::vector<std::string>>> const noDependencies;
|
||||
static std::map<std::string, std::map<std::string, std::vector<std::vector<std::string>>>> const dependencies = {
|
||||
{ "VK_KHR_swapchain",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
@@ -1088,6 +1114,12 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
|
||||
,
|
||||
{ "VK_EXT_sampler_filter_minmax",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
"VK_KHR_get_physical_device_properties2",
|
||||
} } },
|
||||
{ "VK_VERSION_1_1", { {} } } } },
|
||||
{ "VK_AMD_gpa_interface",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
"VK_KHR_get_physical_device_properties2",
|
||||
@@ -1247,6 +1279,12 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
{ {
|
||||
"VK_KHR_cooperative_matrix",
|
||||
} } } } },
|
||||
{ "VK_QCOM_elapsed_timer_query",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
"VK_KHR_get_physical_device_properties2",
|
||||
} } },
|
||||
{ "VK_VERSION_1_1", { {} } } } },
|
||||
{ "VK_KHR_shader_subgroup_extended_types", { { "VK_VERSION_1_1", { {} } } } },
|
||||
{ "VK_KHR_8bit_storage",
|
||||
{ { "VK_VERSION_1_0",
|
||||
@@ -1486,12 +1524,24 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
"VK_KHR_get_physical_device_properties2",
|
||||
} } },
|
||||
{ "VK_VERSION_1_1", { {} } } } },
|
||||
{ "VK_KHR_shader_constant_data",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
"VK_KHR_get_physical_device_properties2",
|
||||
} } },
|
||||
{ "VK_VERSION_1_1", { {} } } } },
|
||||
{ "VK_KHR_dynamic_rendering_local_read",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
"VK_KHR_dynamic_rendering",
|
||||
} } },
|
||||
{ "VK_VERSION_1_3", { {} } } } },
|
||||
{ "VK_KHR_shader_abort",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
"VK_KHR_device_fault",
|
||||
"VK_KHR_shader_constant_data",
|
||||
} } } } },
|
||||
{ "VK_EXT_shader_image_atomic_int64",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
@@ -1820,6 +1870,30 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
"VK_KHR_video_queue",
|
||||
} } } } },
|
||||
{ "VK_NV_device_diagnostics_config",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
"VK_KHR_get_physical_device_properties2",
|
||||
} } },
|
||||
{ "VK_VERSION_1_1", { {} } } } },
|
||||
{ "VK_QCOM_queue_perf_hint",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
"VK_KHR_get_physical_device_properties2",
|
||||
} } },
|
||||
{ "VK_VERSION_1_1", { {} } } } },
|
||||
{ "VK_QCOM_image_processing3",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
"VK_KHR_get_physical_device_properties2",
|
||||
} } },
|
||||
{ "VK_VERSION_1_1", { {} } } } },
|
||||
{ "VK_QCOM_shader_multiple_wait_queues",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
"VK_KHR_get_physical_device_properties2",
|
||||
} } },
|
||||
{ "VK_VERSION_1_1", { {} } } } },
|
||||
{ "VK_EXT_shader_split_barrier",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
"VK_KHR_get_physical_device_properties2",
|
||||
@@ -1865,6 +1939,26 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
"VK_KHR_synchronization2",
|
||||
} } },
|
||||
{ "VK_VERSION_1_3", { {} } } } },
|
||||
{ "VK_KHR_device_address_commands",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
"VK_EXT_extended_dynamic_state",
|
||||
"VK_KHR_buffer_device_address",
|
||||
"VK_KHR_get_physical_device_properties2",
|
||||
"VK_KHR_synchronization2",
|
||||
} } },
|
||||
{ "VK_VERSION_1_1",
|
||||
{ {
|
||||
"VK_EXT_extended_dynamic_state",
|
||||
"VK_KHR_buffer_device_address",
|
||||
"VK_KHR_synchronization2",
|
||||
} } },
|
||||
{ "VK_VERSION_1_2",
|
||||
{ {
|
||||
"VK_EXT_extended_dynamic_state",
|
||||
"VK_KHR_synchronization2",
|
||||
} } },
|
||||
{ "VK_VERSION_1_3", { {} } } } },
|
||||
{ "VK_EXT_graphics_pipeline_library",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
@@ -2618,6 +2712,11 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
"VK_KHR_deferred_host_operations",
|
||||
"VK_KHR_maintenance5",
|
||||
} } } } },
|
||||
{ "VK_ARM_data_graph_instruction_set_tosa",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
"VK_ARM_data_graph",
|
||||
} } } } },
|
||||
{ "VK_QCOM_multiview_per_view_render_areas",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
@@ -2862,6 +2961,12 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
"VK_KHR_maintenance5",
|
||||
} } },
|
||||
{ "VK_VERSION_1_3", { {} } } } },
|
||||
{ "VK_KHR_device_fault",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
"VK_KHR_get_physical_device_properties2",
|
||||
} } },
|
||||
{ "VK_VERSION_1_1", { {} } } } },
|
||||
{ "VK_KHR_maintenance8", { { "VK_VERSION_1_1", { {} } } } },
|
||||
{ "VK_MESA_image_alignment_control",
|
||||
{ { "VK_VERSION_1_0",
|
||||
@@ -2950,6 +3055,12 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
"VK_KHR_get_physical_device_properties2",
|
||||
} } },
|
||||
{ "VK_VERSION_1_1", { {} } } } },
|
||||
{ "VK_ARM_shader_instrumentation",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
"VK_KHR_get_physical_device_properties2",
|
||||
} } },
|
||||
{ "VK_VERSION_1_1", { {} } } } },
|
||||
{ "VK_EXT_vertex_attribute_robustness",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
@@ -2977,17 +3088,13 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
{ {
|
||||
"VK_KHR_get_physical_device_properties2",
|
||||
} } },
|
||||
{ "VK_VERSION_1_1", { {} } } } }
|
||||
#if defined( VK_ENABLE_BETA_EXTENSIONS )
|
||||
,
|
||||
{ "VK_VERSION_1_1", { {} } } } },
|
||||
{ "VK_NV_present_metering",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
"VK_KHR_get_physical_device_properties2",
|
||||
} } },
|
||||
{ "VK_VERSION_1_1", { {} } } } }
|
||||
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
|
||||
,
|
||||
{ "VK_VERSION_1_1", { {} } } } },
|
||||
{ "VK_EXT_fragment_density_map_offset",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
@@ -3022,6 +3129,12 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
{ {
|
||||
"VK_KHR_swapchain",
|
||||
} } } } },
|
||||
{ "VK_KHR_opacity_micromap",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
"VK_KHR_acceleration_structure",
|
||||
"VK_KHR_device_address_commands",
|
||||
} } } } },
|
||||
{ "VK_EXT_shader_64bit_indexing",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
@@ -3045,6 +3158,11 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
"VK_KHR_get_physical_device_properties2",
|
||||
} } },
|
||||
{ "VK_VERSION_1_1", { {} } } } },
|
||||
{ "VK_ARM_data_graph_optical_flow",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
"VK_ARM_data_graph",
|
||||
} } } } },
|
||||
{ "VK_EXT_shader_long_vector", { { "VK_VERSION_1_2", { {} } } } },
|
||||
{ "VK_SEC_pipeline_cache_incremental_mode",
|
||||
{ { "VK_VERSION_1_0",
|
||||
@@ -3064,12 +3182,48 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
"VK_KHR_get_physical_device_properties2",
|
||||
} } },
|
||||
{ "VK_VERSION_1_1", { {} } } } },
|
||||
{ "VK_KHR_maintenance11",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
"VK_KHR_get_physical_device_properties2",
|
||||
} } },
|
||||
{ "VK_VERSION_1_1", { {} } } } },
|
||||
{ "VK_EXT_shader_subgroup_partitioned",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
"VK_KHR_get_physical_device_properties2",
|
||||
} } },
|
||||
{ "VK_VERSION_1_1", { {} } } } }
|
||||
#if defined( VK_USE_PLATFORM_UBM_SEC )
|
||||
,
|
||||
{ "VK_SEC_ubm_surface",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
"VK_KHR_surface",
|
||||
} } } } }
|
||||
#endif /*VK_USE_PLATFORM_UBM_SEC*/
|
||||
,
|
||||
{ "VK_VALVE_shader_mixed_float_dot_product",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
"VK_KHR_get_physical_device_properties2",
|
||||
"VK_KHR_shader_float16_int8",
|
||||
} } },
|
||||
{ "VK_VERSION_1_1",
|
||||
{ {
|
||||
"VK_KHR_shader_float16_int8",
|
||||
},
|
||||
{} } },
|
||||
{ "VK_VERSION_1_2",
|
||||
{ {
|
||||
"VK_KHR_get_physical_device_properties2",
|
||||
} } } } },
|
||||
{ "VK_EXT_primitive_restart_index",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
"VK_KHR_get_physical_device_properties2",
|
||||
} } },
|
||||
{ "VK_VERSION_1_1", { {} } } } }
|
||||
};
|
||||
auto depIt = dependencies.find( extension );
|
||||
return ( depIt != dependencies.end() ) ? depIt->second : noDependencies;
|
||||
@@ -3106,13 +3260,13 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
|
||||
VULKAN_HPP_INLINE std::map<std::string, std::string> const & getObsoletedExtensions()
|
||||
{
|
||||
static const std::map<std::string, std::string> obsoletedExtensions = { { "VK_AMD_negative_viewport_height", "VK_KHR_maintenance1" } };
|
||||
static std::map<std::string, std::string> const obsoletedExtensions = { { "VK_AMD_negative_viewport_height", "VK_KHR_maintenance1" } };
|
||||
return obsoletedExtensions;
|
||||
}
|
||||
|
||||
VULKAN_HPP_INLINE std::map<std::string, std::string> const & getPromotedExtensions()
|
||||
{
|
||||
static const std::map<std::string, std::string> promotedExtensions = { { "VK_KHR_sampler_mirror_clamp_to_edge", "VK_VERSION_1_2" },
|
||||
static std::map<std::string, std::string> const promotedExtensions = { { "VK_KHR_sampler_mirror_clamp_to_edge", "VK_VERSION_1_2" },
|
||||
{ "VK_EXT_debug_marker", "VK_EXT_debug_utils" },
|
||||
{ "VK_AMD_draw_indirect_count", "VK_KHR_draw_indirect_count" },
|
||||
{ "VK_KHR_dynamic_rendering", "VK_VERSION_1_3" },
|
||||
@@ -3202,6 +3356,7 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
{ "VK_EXT_image_robustness", "VK_VERSION_1_3" },
|
||||
{ "VK_KHR_copy_commands2", "VK_VERSION_1_3" },
|
||||
{ "VK_EXT_4444_formats", "VK_VERSION_1_3" },
|
||||
{ "VK_EXT_device_fault", "VK_KHR_device_fault" },
|
||||
{ "VK_ARM_rasterization_order_attachment_access",
|
||||
"VK_EXT_rasterization_order_attachment_access" },
|
||||
{ "VK_VALVE_mutable_descriptor_type", "VK_EXT_mutable_descriptor_type" },
|
||||
@@ -3209,6 +3364,7 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
{ "VK_EXT_present_mode_fifo_latest_ready", "VK_KHR_present_mode_fifo_latest_ready" },
|
||||
{ "VK_EXT_extended_dynamic_state2", "VK_VERSION_1_3" },
|
||||
{ "VK_EXT_global_priority_query", "VK_KHR_global_priority" },
|
||||
{ "VK_EXT_opacity_micromap", "VK_KHR_opacity_micromap" },
|
||||
{ "VK_EXT_load_store_op_none", "VK_KHR_load_store_op_none" },
|
||||
{ "VK_KHR_maintenance4", "VK_VERSION_1_3" },
|
||||
{ "VK_KHR_shader_subgroup_rotate", "VK_VERSION_1_4" },
|
||||
@@ -3316,7 +3472,10 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
return "VK_NV_cluster_acceleration_structure";
|
||||
}
|
||||
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
|
||||
|
||||
if ( extension == "VK_NV_per_stage_descriptor_set" )
|
||||
{
|
||||
return "VK_EXT_descriptor_heap";
|
||||
}
|
||||
return "";
|
||||
}
|
||||
|
||||
@@ -3685,6 +3844,10 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
{
|
||||
return "VK_VERSION_1_3";
|
||||
}
|
||||
if ( extension == "VK_EXT_device_fault" )
|
||||
{
|
||||
return "VK_KHR_device_fault";
|
||||
}
|
||||
if ( extension == "VK_ARM_rasterization_order_attachment_access" )
|
||||
{
|
||||
return "VK_EXT_rasterization_order_attachment_access";
|
||||
@@ -3709,6 +3872,10 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
{
|
||||
return "VK_KHR_global_priority";
|
||||
}
|
||||
if ( extension == "VK_EXT_opacity_micromap" )
|
||||
{
|
||||
return "VK_KHR_opacity_micromap";
|
||||
}
|
||||
if ( extension == "VK_EXT_load_store_op_none" )
|
||||
{
|
||||
return "VK_KHR_load_store_op_none";
|
||||
@@ -3804,7 +3971,7 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
#if defined( VK_ENABLE_BETA_EXTENSIONS )
|
||||
|| ( extension == "VK_NV_displacement_micromap" )
|
||||
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
|
||||
|| false;
|
||||
|| ( extension == "VK_NV_per_stage_descriptor_set" );
|
||||
}
|
||||
|
||||
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR_20 bool isDeviceExtension( std::string const & extension )
|
||||
@@ -3859,7 +4026,7 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
|| ( extension == "VK_ANDROID_external_memory_android_hardware_buffer" )
|
||||
#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
|
||||
|| ( extension == "VK_EXT_sampler_filter_minmax" ) || ( extension == "VK_KHR_storage_buffer_storage_class" ) ||
|
||||
( extension == "VK_AMD_gpu_shader_int16" )
|
||||
( extension == "VK_AMD_gpu_shader_int16" ) || ( extension == "VK_AMD_gpa_interface" )
|
||||
#if defined( VK_ENABLE_BETA_EXTENSIONS )
|
||||
|| ( extension == "VK_AMDX_shader_enqueue" )
|
||||
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
|
||||
@@ -3879,7 +4046,8 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
|| ( extension == "VK_NV_shading_rate_image" ) || ( extension == "VK_NV_ray_tracing" ) || ( extension == "VK_NV_representative_fragment_test" ) ||
|
||||
( extension == "VK_KHR_maintenance3" ) || ( extension == "VK_KHR_draw_indirect_count" ) || ( extension == "VK_EXT_filter_cubic" ) ||
|
||||
( extension == "VK_QCOM_render_pass_shader_resolve" ) || ( extension == "VK_QCOM_cooperative_matrix_conversion" ) ||
|
||||
( extension == "VK_EXT_global_priority" ) || ( extension == "VK_KHR_shader_subgroup_extended_types" ) || ( extension == "VK_KHR_8bit_storage" ) ||
|
||||
( extension == "VK_QCOM_elapsed_timer_query" ) || ( extension == "VK_EXT_global_priority" ) ||
|
||||
( extension == "VK_KHR_shader_subgroup_extended_types" ) || ( extension == "VK_KHR_8bit_storage" ) ||
|
||||
( extension == "VK_EXT_external_memory_host" ) || ( extension == "VK_AMD_buffer_marker" ) || ( extension == "VK_KHR_shader_atomic_int64" ) ||
|
||||
( extension == "VK_KHR_shader_clock" ) || ( extension == "VK_AMD_pipeline_compiler_control" ) || ( extension == "VK_EXT_calibrated_timestamps" ) ||
|
||||
( extension == "VK_AMD_shader_core_properties" ) || ( extension == "VK_KHR_video_decode_h265" ) || ( extension == "VK_KHR_global_priority" ) ||
|
||||
@@ -3900,12 +4068,12 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
( extension == "VK_GOOGLE_hlsl_functionality1" ) || ( extension == "VK_GOOGLE_decorate_string" ) ||
|
||||
( extension == "VK_EXT_subgroup_size_control" ) || ( extension == "VK_KHR_fragment_shading_rate" ) ||
|
||||
( extension == "VK_AMD_shader_core_properties2" ) || ( extension == "VK_AMD_device_coherent_memory" ) ||
|
||||
( extension == "VK_KHR_dynamic_rendering_local_read" ) || ( extension == "VK_EXT_shader_image_atomic_int64" ) ||
|
||||
( extension == "VK_KHR_shader_quad_control" ) || ( extension == "VK_KHR_spirv_1_4" ) || ( extension == "VK_EXT_memory_budget" ) ||
|
||||
( extension == "VK_EXT_memory_priority" ) || ( extension == "VK_NV_dedicated_allocation_image_aliasing" ) ||
|
||||
( extension == "VK_KHR_separate_depth_stencil_layouts" ) || ( extension == "VK_EXT_buffer_device_address" ) ||
|
||||
( extension == "VK_EXT_tooling_info" ) || ( extension == "VK_EXT_separate_stencil_usage" ) || ( extension == "VK_KHR_present_wait" ) ||
|
||||
( extension == "VK_NV_cooperative_matrix" ) || ( extension == "VK_NV_coverage_reduction_mode" ) ||
|
||||
( extension == "VK_KHR_shader_constant_data" ) || ( extension == "VK_KHR_dynamic_rendering_local_read" ) || ( extension == "VK_KHR_shader_abort" ) ||
|
||||
( extension == "VK_EXT_shader_image_atomic_int64" ) || ( extension == "VK_KHR_shader_quad_control" ) || ( extension == "VK_KHR_spirv_1_4" ) ||
|
||||
( extension == "VK_EXT_memory_budget" ) || ( extension == "VK_EXT_memory_priority" ) ||
|
||||
( extension == "VK_NV_dedicated_allocation_image_aliasing" ) || ( extension == "VK_KHR_separate_depth_stencil_layouts" ) ||
|
||||
( extension == "VK_EXT_buffer_device_address" ) || ( extension == "VK_EXT_tooling_info" ) || ( extension == "VK_EXT_separate_stencil_usage" ) ||
|
||||
( extension == "VK_KHR_present_wait" ) || ( extension == "VK_NV_cooperative_matrix" ) || ( extension == "VK_NV_coverage_reduction_mode" ) ||
|
||||
( extension == "VK_EXT_fragment_shader_interlock" ) || ( extension == "VK_EXT_ycbcr_image_arrays" ) ||
|
||||
( extension == "VK_KHR_uniform_buffer_standard_layout" ) || ( extension == "VK_EXT_provoking_vertex" )
|
||||
#if defined( VK_USE_PLATFORM_WIN32_KHR )
|
||||
@@ -3924,7 +4092,8 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
( extension == "VK_KHR_pipeline_library" ) || ( extension == "VK_NV_present_barrier" ) || ( extension == "VK_KHR_shader_non_semantic_info" ) ||
|
||||
( extension == "VK_KHR_present_id" ) || ( extension == "VK_EXT_private_data" ) || ( extension == "VK_EXT_pipeline_creation_cache_control" ) ||
|
||||
( extension == "VK_KHR_video_encode_queue" ) || ( extension == "VK_NV_device_diagnostics_config" ) ||
|
||||
( extension == "VK_QCOM_render_pass_store_ops" )
|
||||
( extension == "VK_QCOM_render_pass_store_ops" ) || ( extension == "VK_QCOM_queue_perf_hint" ) || ( extension == "VK_QCOM_image_processing3" ) ||
|
||||
( extension == "VK_QCOM_shader_multiple_wait_queues" ) || ( extension == "VK_EXT_shader_split_barrier" )
|
||||
#if defined( VK_ENABLE_BETA_EXTENSIONS )
|
||||
|| ( extension == "VK_NV_cuda_kernel_launch" )
|
||||
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
|
||||
@@ -3932,12 +4101,12 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
#if defined( VK_USE_PLATFORM_METAL_EXT )
|
||||
|| ( extension == "VK_EXT_metal_objects" )
|
||||
#endif /*VK_USE_PLATFORM_METAL_EXT*/
|
||||
|| ( extension == "VK_KHR_synchronization2" ) || ( extension == "VK_EXT_descriptor_buffer" ) || ( extension == "VK_EXT_graphics_pipeline_library" ) ||
|
||||
( extension == "VK_AMD_shader_early_and_late_fragment_tests" ) || ( extension == "VK_KHR_fragment_shader_barycentric" ) ||
|
||||
( extension == "VK_KHR_shader_subgroup_uniform_control_flow" ) || ( extension == "VK_KHR_zero_initialize_workgroup_memory" ) ||
|
||||
( extension == "VK_NV_fragment_shading_rate_enums" ) || ( extension == "VK_NV_ray_tracing_motion_blur" ) || ( extension == "VK_EXT_mesh_shader" ) ||
|
||||
( extension == "VK_EXT_ycbcr_2plane_444_formats" ) || ( extension == "VK_EXT_fragment_density_map2" ) ||
|
||||
( extension == "VK_QCOM_rotated_copy_commands" ) || ( extension == "VK_EXT_image_robustness" ) ||
|
||||
|| ( extension == "VK_KHR_synchronization2" ) || ( extension == "VK_EXT_descriptor_buffer" ) || ( extension == "VK_KHR_device_address_commands" ) ||
|
||||
( extension == "VK_EXT_graphics_pipeline_library" ) || ( extension == "VK_AMD_shader_early_and_late_fragment_tests" ) ||
|
||||
( extension == "VK_KHR_fragment_shader_barycentric" ) || ( extension == "VK_KHR_shader_subgroup_uniform_control_flow" ) ||
|
||||
( extension == "VK_KHR_zero_initialize_workgroup_memory" ) || ( extension == "VK_NV_fragment_shading_rate_enums" ) ||
|
||||
( extension == "VK_NV_ray_tracing_motion_blur" ) || ( extension == "VK_EXT_mesh_shader" ) || ( extension == "VK_EXT_ycbcr_2plane_444_formats" ) ||
|
||||
( extension == "VK_EXT_fragment_density_map2" ) || ( extension == "VK_QCOM_rotated_copy_commands" ) || ( extension == "VK_EXT_image_robustness" ) ||
|
||||
( extension == "VK_KHR_workgroup_memory_explicit_layout" ) || ( extension == "VK_KHR_copy_commands2" ) ||
|
||||
( extension == "VK_EXT_image_compression_control" ) || ( extension == "VK_EXT_attachment_feedback_loop_layout" ) ||
|
||||
( extension == "VK_EXT_4444_formats" ) || ( extension == "VK_EXT_device_fault" ) ||
|
||||
@@ -3997,12 +4166,13 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
( extension == "VK_ARM_shader_core_builtins" ) || ( extension == "VK_EXT_pipeline_library_group_handles" ) ||
|
||||
( extension == "VK_EXT_dynamic_rendering_unused_attachments" ) || ( extension == "VK_KHR_internally_synchronized_queues" ) ||
|
||||
( extension == "VK_NV_low_latency2" ) || ( extension == "VK_KHR_cooperative_matrix" ) || ( extension == "VK_ARM_data_graph" ) ||
|
||||
( extension == "VK_QCOM_multiview_per_view_render_areas" ) || ( extension == "VK_KHR_compute_shader_derivatives" ) ||
|
||||
( extension == "VK_KHR_video_decode_av1" ) || ( extension == "VK_KHR_video_encode_av1" ) || ( extension == "VK_KHR_video_decode_vp9" ) ||
|
||||
( extension == "VK_KHR_video_maintenance1" ) || ( extension == "VK_NV_per_stage_descriptor_set" ) || ( extension == "VK_QCOM_image_processing2" ) ||
|
||||
( extension == "VK_QCOM_filter_cubic_weights" ) || ( extension == "VK_QCOM_ycbcr_degamma" ) || ( extension == "VK_QCOM_filter_cubic_clamp" ) ||
|
||||
( extension == "VK_EXT_attachment_feedback_loop_dynamic_state" ) || ( extension == "VK_KHR_vertex_attribute_divisor" ) ||
|
||||
( extension == "VK_KHR_load_store_op_none" ) || ( extension == "VK_KHR_unified_image_layouts" ) || ( extension == "VK_KHR_shader_float_controls2" )
|
||||
( extension == "VK_ARM_data_graph_instruction_set_tosa" ) || ( extension == "VK_QCOM_multiview_per_view_render_areas" ) ||
|
||||
( extension == "VK_KHR_compute_shader_derivatives" ) || ( extension == "VK_KHR_video_decode_av1" ) || ( extension == "VK_KHR_video_encode_av1" ) ||
|
||||
( extension == "VK_KHR_video_decode_vp9" ) || ( extension == "VK_KHR_video_maintenance1" ) || ( extension == "VK_NV_per_stage_descriptor_set" ) ||
|
||||
( extension == "VK_QCOM_image_processing2" ) || ( extension == "VK_QCOM_filter_cubic_weights" ) || ( extension == "VK_QCOM_ycbcr_degamma" ) ||
|
||||
( extension == "VK_QCOM_filter_cubic_clamp" ) || ( extension == "VK_EXT_attachment_feedback_loop_dynamic_state" ) ||
|
||||
( extension == "VK_KHR_vertex_attribute_divisor" ) || ( extension == "VK_KHR_load_store_op_none" ) ||
|
||||
( extension == "VK_KHR_unified_image_layouts" ) || ( extension == "VK_KHR_shader_float_controls2" )
|
||||
#if defined( VK_USE_PLATFORM_SCREEN_QNX )
|
||||
|| ( extension == "VK_QNX_external_memory_screen_buffer" )
|
||||
#endif /*VK_USE_PLATFORM_SCREEN_QNX*/
|
||||
@@ -4017,25 +4187,25 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
( extension == "VK_EXT_shader_replicated_composites" ) || ( extension == "VK_EXT_shader_float8" ) ||
|
||||
( extension == "VK_NV_ray_tracing_validation" ) || ( extension == "VK_NV_cluster_acceleration_structure" ) ||
|
||||
( extension == "VK_NV_partitioned_acceleration_structure" ) || ( extension == "VK_EXT_device_generated_commands" ) ||
|
||||
( extension == "VK_KHR_maintenance8" ) || ( extension == "VK_MESA_image_alignment_control" ) || ( extension == "VK_KHR_shader_fma" ) ||
|
||||
( extension == "VK_NV_push_constant_bank" ) || ( extension == "VK_EXT_ray_tracing_invocation_reorder" ) ||
|
||||
( extension == "VK_KHR_device_fault" ) || ( extension == "VK_KHR_maintenance8" ) || ( extension == "VK_MESA_image_alignment_control" ) ||
|
||||
( extension == "VK_KHR_shader_fma" ) || ( extension == "VK_NV_push_constant_bank" ) || ( extension == "VK_EXT_ray_tracing_invocation_reorder" ) ||
|
||||
( extension == "VK_EXT_depth_clamp_control" ) || ( extension == "VK_KHR_maintenance9" ) || ( extension == "VK_KHR_video_maintenance2" ) ||
|
||||
( extension == "VK_HUAWEI_hdr_vivid" ) || ( extension == "VK_NV_cooperative_matrix2" ) || ( extension == "VK_ARM_pipeline_opacity_micromap" )
|
||||
#if defined( VK_USE_PLATFORM_METAL_EXT )
|
||||
|| ( extension == "VK_EXT_external_memory_metal" )
|
||||
#endif /*VK_USE_PLATFORM_METAL_EXT*/
|
||||
|| ( extension == "VK_KHR_depth_clamp_zero_one" ) || ( extension == "VK_ARM_performance_counters_by_region" ) ||
|
||||
( extension == "VK_EXT_vertex_attribute_robustness" ) || ( extension == "VK_ARM_format_pack" ) ||
|
||||
( extension == "VK_VALVE_fragment_density_map_layered" ) || ( extension == "VK_KHR_robustness2" )
|
||||
#if defined( VK_ENABLE_BETA_EXTENSIONS )
|
||||
|| ( extension == "VK_NV_present_metering" )
|
||||
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
|
||||
|| ( extension == "VK_EXT_fragment_density_map_offset" ) || ( extension == "VK_EXT_zero_initialize_device_memory" ) ||
|
||||
( extension == "VK_KHR_present_mode_fifo_latest_ready" ) || ( extension == "VK_EXT_shader_64bit_indexing" ) ||
|
||||
( extension == "VK_EXT_custom_resolve" ) || ( extension == "VK_QCOM_data_graph_model" ) || ( extension == "VK_KHR_maintenance10" ) ||
|
||||
( extension == "VK_EXT_shader_long_vector" ) || ( extension == "VK_SEC_pipeline_cache_incremental_mode" ) ||
|
||||
( extension == "VK_EXT_shader_uniform_buffer_unsized_array" ) || ( extension == "VK_NV_compute_occupancy_priority" ) ||
|
||||
( extension == "VK_EXT_shader_subgroup_partitioned" );
|
||||
( extension == "VK_ARM_shader_instrumentation" ) || ( extension == "VK_EXT_vertex_attribute_robustness" ) || ( extension == "VK_ARM_format_pack" ) ||
|
||||
( extension == "VK_VALVE_fragment_density_map_layered" ) || ( extension == "VK_KHR_robustness2" ) || ( extension == "VK_NV_present_metering" ) ||
|
||||
( extension == "VK_EXT_fragment_density_map_offset" ) || ( extension == "VK_EXT_zero_initialize_device_memory" ) ||
|
||||
( extension == "VK_KHR_present_mode_fifo_latest_ready" ) || ( extension == "VK_KHR_opacity_micromap" ) ||
|
||||
( extension == "VK_EXT_shader_64bit_indexing" ) || ( extension == "VK_EXT_custom_resolve" ) || ( extension == "VK_QCOM_data_graph_model" ) ||
|
||||
( extension == "VK_KHR_maintenance10" ) || ( extension == "VK_ARM_data_graph_optical_flow" ) || ( extension == "VK_EXT_shader_long_vector" ) ||
|
||||
( extension == "VK_SEC_pipeline_cache_incremental_mode" ) || ( extension == "VK_EXT_shader_uniform_buffer_unsized_array" ) ||
|
||||
( extension == "VK_NV_compute_occupancy_priority" ) || ( extension == "VK_KHR_maintenance11" ) ||
|
||||
( extension == "VK_EXT_shader_subgroup_partitioned" ) || ( extension == "VK_VALVE_shader_mixed_float_dot_product" ) ||
|
||||
( extension == "VK_SEC_throttle_hint" ) || ( extension == "VK_ARM_data_graph_neural_accelerator_statistics" ) ||
|
||||
( extension == "VK_EXT_primitive_restart_index" );
|
||||
}
|
||||
|
||||
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR_20 bool isInstanceExtension( std::string const & extension )
|
||||
@@ -4100,6 +4270,9 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
#if defined( VK_USE_PLATFORM_OHOS )
|
||||
|| ( extension == "VK_OHOS_surface" )
|
||||
#endif /*VK_USE_PLATFORM_OHOS*/
|
||||
#if defined( VK_USE_PLATFORM_UBM_SEC )
|
||||
|| ( extension == "VK_SEC_ubm_surface" )
|
||||
#endif /*VK_USE_PLATFORM_UBM_SEC*/
|
||||
;
|
||||
}
|
||||
|
||||
@@ -4149,13 +4322,13 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
( extension == "VK_EXT_private_data" ) || ( extension == "VK_EXT_pipeline_creation_cache_control" ) || ( extension == "VK_KHR_synchronization2" ) ||
|
||||
( extension == "VK_KHR_zero_initialize_workgroup_memory" ) || ( extension == "VK_EXT_ycbcr_2plane_444_formats" ) ||
|
||||
( extension == "VK_EXT_image_robustness" ) || ( extension == "VK_KHR_copy_commands2" ) || ( extension == "VK_EXT_4444_formats" ) ||
|
||||
( extension == "VK_ARM_rasterization_order_attachment_access" ) || ( extension == "VK_VALVE_mutable_descriptor_type" ) ||
|
||||
( extension == "VK_KHR_format_feature_flags2" ) || ( extension == "VK_EXT_present_mode_fifo_latest_ready" ) ||
|
||||
( extension == "VK_EXT_extended_dynamic_state2" ) || ( extension == "VK_EXT_global_priority_query" ) ||
|
||||
( extension == "VK_EXT_load_store_op_none" ) || ( extension == "VK_KHR_maintenance4" ) || ( extension == "VK_KHR_shader_subgroup_rotate" ) ||
|
||||
( extension == "VK_EXT_depth_clamp_zero_one" ) || ( extension == "VK_QCOM_fragment_density_map_offset" ) ||
|
||||
( extension == "VK_NV_copy_memory_indirect" ) || ( extension == "VK_NV_memory_decompression" ) ||
|
||||
( extension == "VK_EXT_pipeline_protected_access" ) || ( extension == "VK_KHR_maintenance5" ) ||
|
||||
( extension == "VK_EXT_device_fault" ) || ( extension == "VK_ARM_rasterization_order_attachment_access" ) ||
|
||||
( extension == "VK_VALVE_mutable_descriptor_type" ) || ( extension == "VK_KHR_format_feature_flags2" ) ||
|
||||
( extension == "VK_EXT_present_mode_fifo_latest_ready" ) || ( extension == "VK_EXT_extended_dynamic_state2" ) ||
|
||||
( extension == "VK_EXT_global_priority_query" ) || ( extension == "VK_EXT_opacity_micromap" ) || ( extension == "VK_EXT_load_store_op_none" ) ||
|
||||
( extension == "VK_KHR_maintenance4" ) || ( extension == "VK_KHR_shader_subgroup_rotate" ) || ( extension == "VK_EXT_depth_clamp_zero_one" ) ||
|
||||
( extension == "VK_QCOM_fragment_density_map_offset" ) || ( extension == "VK_NV_copy_memory_indirect" ) ||
|
||||
( extension == "VK_NV_memory_decompression" ) || ( extension == "VK_EXT_pipeline_protected_access" ) || ( extension == "VK_KHR_maintenance5" ) ||
|
||||
( extension == "VK_NV_ray_tracing_invocation_reorder" ) || ( extension == "VK_KHR_vertex_attribute_divisor" ) ||
|
||||
( extension == "VK_KHR_load_store_op_none" ) || ( extension == "VK_KHR_shader_float_controls2" ) || ( extension == "VK_KHR_index_type_uint8" ) ||
|
||||
( extension == "VK_KHR_line_rasterization" ) || ( extension == "VK_KHR_shader_expect_assume" ) || ( extension == "VK_KHR_maintenance6" ) ||
|
||||
|
||||
+108
-29
@@ -8,7 +8,11 @@
|
||||
#ifndef VULKAN_FORMAT_TRAITS_HPP
|
||||
#define VULKAN_FORMAT_TRAITS_HPP
|
||||
|
||||
#if defined( VULKAN_HPP_CXX_MODULE )
|
||||
# define VULKAN_HPP_EXPORT export
|
||||
#else
|
||||
# include <vulkan/vulkan.hpp>
|
||||
#endif
|
||||
|
||||
namespace VULKAN_HPP_NAMESPACE
|
||||
{
|
||||
@@ -19,92 +23,92 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
//=== Function Declarations ===
|
||||
|
||||
// The three-dimensional extent of a texel block.
|
||||
VULKAN_HPP_CONSTEXPR_14 std::array<uint8_t, 3> blockExtent( Format format );
|
||||
VULKAN_HPP_EXPORT VULKAN_HPP_CONSTEXPR_14 std::array<uint8_t, 3> blockExtent( Format format );
|
||||
|
||||
// The texel block size in bytes.
|
||||
VULKAN_HPP_CONSTEXPR_14 uint8_t blockSize( Format format );
|
||||
VULKAN_HPP_EXPORT VULKAN_HPP_CONSTEXPR_14 uint8_t blockSize( Format format );
|
||||
|
||||
// The class of the format (can't be just named "class"!)
|
||||
VULKAN_HPP_CONSTEXPR_14 char const * compatibilityClass( Format format );
|
||||
VULKAN_HPP_EXPORT VULKAN_HPP_CONSTEXPR_14 char const * compatibilityClass( Format format );
|
||||
|
||||
// The number of bits in this component, if not compressed, otherwise 0.
|
||||
VULKAN_HPP_CONSTEXPR_14 uint8_t componentBits( Format format, uint8_t component );
|
||||
VULKAN_HPP_EXPORT VULKAN_HPP_CONSTEXPR_14 uint8_t componentBits( Format format, uint8_t component );
|
||||
|
||||
// The number of components of this format.
|
||||
VULKAN_HPP_CONSTEXPR_14 uint8_t componentCount( Format format );
|
||||
VULKAN_HPP_EXPORT VULKAN_HPP_CONSTEXPR_14 uint8_t componentCount( Format format );
|
||||
|
||||
// The name of the component
|
||||
VULKAN_HPP_CONSTEXPR_14 char const * componentName( Format format, uint8_t component );
|
||||
VULKAN_HPP_EXPORT VULKAN_HPP_CONSTEXPR_14 char const * componentName( Format format, uint8_t component );
|
||||
|
||||
// The numeric format of the component
|
||||
VULKAN_HPP_CONSTEXPR_14 char const * componentNumericFormat( Format format, uint8_t component );
|
||||
VULKAN_HPP_EXPORT VULKAN_HPP_CONSTEXPR_14 char const * componentNumericFormat( Format format, uint8_t component );
|
||||
|
||||
// The plane this component lies in.
|
||||
VULKAN_HPP_CONSTEXPR_14 uint8_t componentPlaneIndex( Format format, uint8_t component );
|
||||
VULKAN_HPP_EXPORT VULKAN_HPP_CONSTEXPR_14 uint8_t componentPlaneIndex( Format format, uint8_t component );
|
||||
|
||||
// True, if the components of this format are compressed, otherwise false.
|
||||
VULKAN_HPP_CONSTEXPR_14 bool componentsAreCompressed( Format format );
|
||||
VULKAN_HPP_EXPORT VULKAN_HPP_CONSTEXPR_14 bool componentsAreCompressed( Format format );
|
||||
|
||||
// A textual description of the compression scheme, or an empty string if it is not compressed
|
||||
VULKAN_HPP_CONSTEXPR_14 char const * compressionScheme( Format format );
|
||||
VULKAN_HPP_EXPORT VULKAN_HPP_CONSTEXPR_14 char const * compressionScheme( Format format );
|
||||
|
||||
// Get all formats
|
||||
std::vector<Format> const & getAllFormats();
|
||||
VULKAN_HPP_EXPORT std::vector<Format> const & getAllFormats();
|
||||
|
||||
// Get all color with a color component
|
||||
std::vector<Format> const & getColorFormats();
|
||||
VULKAN_HPP_EXPORT std::vector<Format> const & getColorFormats();
|
||||
|
||||
// Get all formats with a depth component
|
||||
std::vector<Format> const & getDepthFormats();
|
||||
VULKAN_HPP_EXPORT std::vector<Format> const & getDepthFormats();
|
||||
|
||||
// Get all formats with a depth and a stencil component
|
||||
std::vector<Format> const & getDepthStencilFormats();
|
||||
VULKAN_HPP_EXPORT std::vector<Format> const & getDepthStencilFormats();
|
||||
|
||||
// Get all formats with a stencil component
|
||||
std::vector<Format> const & getStencilFormats();
|
||||
VULKAN_HPP_EXPORT std::vector<Format> const & getStencilFormats();
|
||||
|
||||
// True, if this format has an alpha component
|
||||
VULKAN_HPP_CONSTEXPR_14 bool hasAlphaComponent( Format format );
|
||||
VULKAN_HPP_EXPORT VULKAN_HPP_CONSTEXPR_14 bool hasAlphaComponent( Format format );
|
||||
|
||||
// True, if this format has a blue component
|
||||
VULKAN_HPP_CONSTEXPR_14 bool hasBlueComponent( Format format );
|
||||
VULKAN_HPP_EXPORT VULKAN_HPP_CONSTEXPR_14 bool hasBlueComponent( Format format );
|
||||
|
||||
// True, if this format has a depth component
|
||||
VULKAN_HPP_CONSTEXPR_14 bool hasDepthComponent( Format format );
|
||||
VULKAN_HPP_EXPORT VULKAN_HPP_CONSTEXPR_14 bool hasDepthComponent( Format format );
|
||||
|
||||
// True, if this format has a green component
|
||||
VULKAN_HPP_CONSTEXPR_14 bool hasGreenComponent( Format format );
|
||||
VULKAN_HPP_EXPORT VULKAN_HPP_CONSTEXPR_14 bool hasGreenComponent( Format format );
|
||||
|
||||
// True, if this format has a red component
|
||||
VULKAN_HPP_CONSTEXPR_14 bool hasRedComponent( Format format );
|
||||
VULKAN_HPP_EXPORT VULKAN_HPP_CONSTEXPR_14 bool hasRedComponent( Format format );
|
||||
|
||||
// True, if this format has a stencil component
|
||||
VULKAN_HPP_CONSTEXPR_14 bool hasStencilComponent( Format format );
|
||||
VULKAN_HPP_EXPORT VULKAN_HPP_CONSTEXPR_14 bool hasStencilComponent( Format format );
|
||||
|
||||
// True, if the format is a color
|
||||
VULKAN_HPP_CONSTEXPR_14 bool isColor( Format format );
|
||||
VULKAN_HPP_EXPORT VULKAN_HPP_CONSTEXPR_14 bool isColor( Format format );
|
||||
|
||||
// True, if this format is a compressed one.
|
||||
VULKAN_HPP_CONSTEXPR_14 bool isCompressed( Format format );
|
||||
VULKAN_HPP_EXPORT VULKAN_HPP_CONSTEXPR_14 bool isCompressed( Format format );
|
||||
|
||||
// The number of bits into which the format is packed. A single image element in this format can be stored in the same space as a scalar type of this bit
|
||||
// width.
|
||||
VULKAN_HPP_CONSTEXPR_14 uint8_t packed( Format format );
|
||||
VULKAN_HPP_EXPORT VULKAN_HPP_CONSTEXPR_14 uint8_t packed( Format format );
|
||||
|
||||
// The single-plane format that this plane is compatible with.
|
||||
VULKAN_HPP_CONSTEXPR_14 Format planeCompatibleFormat( Format format, uint8_t plane );
|
||||
VULKAN_HPP_EXPORT VULKAN_HPP_CONSTEXPR_14 Format planeCompatibleFormat( Format format, uint8_t plane );
|
||||
|
||||
// The number of image planes of this format.
|
||||
VULKAN_HPP_CONSTEXPR_14 uint8_t planeCount( Format format );
|
||||
VULKAN_HPP_EXPORT VULKAN_HPP_CONSTEXPR_14 uint8_t planeCount( Format format );
|
||||
|
||||
// The relative height of this plane. A value of k means that this plane is 1/k the height of the overall format.
|
||||
VULKAN_HPP_CONSTEXPR_14 uint8_t planeHeightDivisor( Format format, uint8_t plane );
|
||||
VULKAN_HPP_EXPORT VULKAN_HPP_CONSTEXPR_14 uint8_t planeHeightDivisor( Format format, uint8_t plane );
|
||||
|
||||
// The relative width of this plane. A value of k means that this plane is 1/k the width of the overall format.
|
||||
VULKAN_HPP_CONSTEXPR_14 uint8_t planeWidthDivisor( Format format, uint8_t plane );
|
||||
VULKAN_HPP_EXPORT VULKAN_HPP_CONSTEXPR_14 uint8_t planeWidthDivisor( Format format, uint8_t plane );
|
||||
|
||||
// The number of texels in a texel block.
|
||||
VULKAN_HPP_CONSTEXPR_14 uint8_t texelsPerBlock( Format format );
|
||||
VULKAN_HPP_EXPORT VULKAN_HPP_CONSTEXPR_14 uint8_t texelsPerBlock( Format format );
|
||||
|
||||
//=== Function Definitions ===
|
||||
|
||||
@@ -516,6 +520,9 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
case Format::eAstc6x6x6SrgbBlockEXT : return 16;
|
||||
case Format::eAstc6x6x6SfloatBlockEXT : return 16;
|
||||
case Format::eR8BoolARM : return 1;
|
||||
case Format::eR16SfloatFpencodingBfloat16ARM : return 2;
|
||||
case Format::eR8SfloatFpencodingFloat8E4M3ARM : return 1;
|
||||
case Format::eR8SfloatFpencodingFloat8E5M2ARM : return 1;
|
||||
case Format::eR16G16Sfixed5NV : return 4;
|
||||
case Format::eR10X6UintPack16ARM : return 2;
|
||||
case Format::eR10X6G10X6Uint2Pack16ARM : return 4;
|
||||
@@ -820,6 +827,9 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
case Format::eAstc6x6x6SrgbBlockEXT : return "ASTC_6x6x6";
|
||||
case Format::eAstc6x6x6SfloatBlockEXT : return "ASTC_6x6x6";
|
||||
case Format::eR8BoolARM : return "8-bit";
|
||||
case Format::eR16SfloatFpencodingBfloat16ARM : return "16-bit";
|
||||
case Format::eR8SfloatFpencodingFloat8E4M3ARM : return "8-bit";
|
||||
case Format::eR8SfloatFpencodingFloat8E5M2ARM : return "8-bit";
|
||||
case Format::eR16G16Sfixed5NV : return "32-bit";
|
||||
case Format::eR10X6UintPack16ARM : return "16-bit";
|
||||
case Format::eR10X6G10X6Uint2Pack16ARM : return "32-bit";
|
||||
@@ -2237,6 +2247,24 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
case 0 : return 8;
|
||||
default: VULKAN_HPP_ASSERT( false ); return 0;
|
||||
}
|
||||
case Format::eR16SfloatFpencodingBfloat16ARM:
|
||||
switch ( component )
|
||||
{
|
||||
case 0 : return 16;
|
||||
default: VULKAN_HPP_ASSERT( false ); return 0;
|
||||
}
|
||||
case Format::eR8SfloatFpencodingFloat8E4M3ARM:
|
||||
switch ( component )
|
||||
{
|
||||
case 0 : return 8;
|
||||
default: VULKAN_HPP_ASSERT( false ); return 0;
|
||||
}
|
||||
case Format::eR8SfloatFpencodingFloat8E5M2ARM:
|
||||
switch ( component )
|
||||
{
|
||||
case 0 : return 8;
|
||||
default: VULKAN_HPP_ASSERT( false ); return 0;
|
||||
}
|
||||
case Format::eR16G16Sfixed5NV:
|
||||
switch ( component )
|
||||
{
|
||||
@@ -2637,6 +2665,9 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
case Format::eAstc6x6x6SrgbBlockEXT : return 4;
|
||||
case Format::eAstc6x6x6SfloatBlockEXT : return 4;
|
||||
case Format::eR8BoolARM : return 1;
|
||||
case Format::eR16SfloatFpencodingBfloat16ARM : return 1;
|
||||
case Format::eR8SfloatFpencodingFloat8E4M3ARM : return 1;
|
||||
case Format::eR8SfloatFpencodingFloat8E5M2ARM : return 1;
|
||||
case Format::eR16G16Sfixed5NV : return 2;
|
||||
case Format::eR10X6UintPack16ARM : return 1;
|
||||
case Format::eR10X6G10X6Uint2Pack16ARM : return 2;
|
||||
@@ -4956,6 +4987,24 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
case 0 : return "R";
|
||||
default: VULKAN_HPP_ASSERT( false ); return "";
|
||||
}
|
||||
case Format::eR16SfloatFpencodingBfloat16ARM:
|
||||
switch ( component )
|
||||
{
|
||||
case 0 : return "R";
|
||||
default: VULKAN_HPP_ASSERT( false ); return "";
|
||||
}
|
||||
case Format::eR8SfloatFpencodingFloat8E4M3ARM:
|
||||
switch ( component )
|
||||
{
|
||||
case 0 : return "R";
|
||||
default: VULKAN_HPP_ASSERT( false ); return "";
|
||||
}
|
||||
case Format::eR8SfloatFpencodingFloat8E5M2ARM:
|
||||
switch ( component )
|
||||
{
|
||||
case 0 : return "R";
|
||||
default: VULKAN_HPP_ASSERT( false ); return "";
|
||||
}
|
||||
case Format::eR16G16Sfixed5NV:
|
||||
switch ( component )
|
||||
{
|
||||
@@ -7371,6 +7420,24 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
case 0 : return "BOOL";
|
||||
default: VULKAN_HPP_ASSERT( false ); return "";
|
||||
}
|
||||
case Format::eR16SfloatFpencodingBfloat16ARM:
|
||||
switch ( component )
|
||||
{
|
||||
case 0 : return "SFLOAT";
|
||||
default: VULKAN_HPP_ASSERT( false ); return "";
|
||||
}
|
||||
case Format::eR8SfloatFpencodingFloat8E4M3ARM:
|
||||
switch ( component )
|
||||
{
|
||||
case 0 : return "SFLOAT";
|
||||
default: VULKAN_HPP_ASSERT( false ); return "";
|
||||
}
|
||||
case Format::eR8SfloatFpencodingFloat8E5M2ARM:
|
||||
switch ( component )
|
||||
{
|
||||
case 0 : return "SFLOAT";
|
||||
default: VULKAN_HPP_ASSERT( false ); return "";
|
||||
}
|
||||
case Format::eR16G16Sfixed5NV:
|
||||
switch ( component )
|
||||
{
|
||||
@@ -8214,6 +8281,9 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
Format::eAstc6x6x6SrgbBlockEXT,
|
||||
Format::eAstc6x6x6SfloatBlockEXT,
|
||||
Format::eR8BoolARM,
|
||||
Format::eR16SfloatFpencodingBfloat16ARM,
|
||||
Format::eR8SfloatFpencodingFloat8E4M3ARM,
|
||||
Format::eR8SfloatFpencodingFloat8E5M2ARM,
|
||||
Format::eR16G16Sfixed5NV,
|
||||
Format::eR10X6UintPack16ARM,
|
||||
Format::eR10X6G10X6Uint2Pack16ARM,
|
||||
@@ -8507,6 +8577,9 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
Format::eAstc6x6x6SrgbBlockEXT,
|
||||
Format::eAstc6x6x6SfloatBlockEXT,
|
||||
Format::eR8BoolARM,
|
||||
Format::eR16SfloatFpencodingBfloat16ARM,
|
||||
Format::eR8SfloatFpencodingFloat8E4M3ARM,
|
||||
Format::eR8SfloatFpencodingFloat8E5M2ARM,
|
||||
Format::eR16G16Sfixed5NV,
|
||||
Format::eR10X6UintPack16ARM,
|
||||
Format::eR10X6G10X6Uint2Pack16ARM,
|
||||
@@ -9496,6 +9569,9 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
case Format::eAstc6x6x6SrgbBlockEXT:
|
||||
case Format::eAstc6x6x6SfloatBlockEXT:
|
||||
case Format::eR8BoolARM:
|
||||
case Format::eR16SfloatFpencodingBfloat16ARM:
|
||||
case Format::eR8SfloatFpencodingFloat8E4M3ARM:
|
||||
case Format::eR8SfloatFpencodingFloat8E5M2ARM:
|
||||
case Format::eR16G16Sfixed5NV:
|
||||
case Format::eR10X6UintPack16ARM:
|
||||
case Format::eR10X6G10X6Uint2Pack16ARM:
|
||||
@@ -10552,6 +10628,9 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
case Format::eAstc6x6x6SrgbBlockEXT : return 216;
|
||||
case Format::eAstc6x6x6SfloatBlockEXT : return 216;
|
||||
case Format::eR8BoolARM : return 1;
|
||||
case Format::eR16SfloatFpencodingBfloat16ARM : return 1;
|
||||
case Format::eR8SfloatFpencodingFloat8E4M3ARM : return 1;
|
||||
case Format::eR8SfloatFpencodingFloat8E5M2ARM : return 1;
|
||||
case Format::eR16G16Sfixed5NV : return 1;
|
||||
case Format::eR10X6UintPack16ARM : return 1;
|
||||
case Format::eR10X6G10X6Uint2Pack16ARM : return 1;
|
||||
|
||||
Vendored
+6276
-5393
File diff suppressed because it is too large
Load Diff
+2919
-1816
File diff suppressed because it is too large
Load Diff
Vendored
+1256
-79
File diff suppressed because it is too large
Load Diff
+34
-15
@@ -87,6 +87,23 @@
|
||||
# define VULKAN_HPP_ENABLE_DYNAMIC_LOADER_TOOL 1
|
||||
#endif
|
||||
|
||||
#if VULKAN_HPP_ENABLE_DYNAMIC_LOADER_TOOL == 1
|
||||
# if defined( __unix__ ) || defined( __APPLE__ ) || defined( __QNX__ ) || defined( __Fuchsia__ ) && !defined( VULKAN_HPP_CXX_MODULE )
|
||||
# include <dlfcn.h>
|
||||
# elif defined( _WIN32 ) && !defined( VULKAN_HPP_NO_WIN32_PROTOTYPES )
|
||||
using HINSTANCE = struct HINSTANCE__ *;
|
||||
# if defined( _WIN64 )
|
||||
# include <cstdint>
|
||||
using FARPROC = int64_t( __stdcall * )();
|
||||
# else
|
||||
using FARPROC = int( __stdcall * )();
|
||||
# endif
|
||||
extern "C" __declspec( dllimport ) HINSTANCE __stdcall LoadLibraryA( char const * lpLibFileName );
|
||||
extern "C" __declspec( dllimport ) int __stdcall FreeLibrary( HINSTANCE hLibModule );
|
||||
extern "C" __declspec( dllimport ) FARPROC __stdcall GetProcAddress( HINSTANCE hModule, char const * lpProcName );
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#if !defined( __has_include )
|
||||
# define __has_include( x ) false
|
||||
#endif
|
||||
@@ -99,6 +116,12 @@
|
||||
# define VULKAN_HPP_SUPPORT_SPAN
|
||||
#endif
|
||||
|
||||
#if defined( VULKAN_HPP_CXX_MODULE )
|
||||
# define VULKAN_HPP_EXPORT export
|
||||
#else
|
||||
# define VULKAN_HPP_EXPORT
|
||||
#endif
|
||||
|
||||
#if defined( VULKAN_HPP_CXX_MODULE ) && !( defined( __cpp_modules ) && defined( __cpp_lib_modules ) )
|
||||
VULKAN_HPP_COMPILE_WARNING( "This is a non-conforming implementation of C++ named modules and the standard library module." )
|
||||
#endif
|
||||
@@ -175,7 +198,7 @@ VULKAN_HPP_COMPILE_WARNING( "This is a non-conforming implementation of C++ name
|
||||
# else
|
||||
# define VULKAN_HPP_CONSTEXPR_17
|
||||
# endif
|
||||
# if ( 201907 <= __cpp_constexpr ) && ( !defined( __GNUC__ ) || ( 110400 < GCC_VERSION ) )
|
||||
# if ( 201907 <= __cpp_constexpr ) && ( !defined( __GNUC__ ) || ( 120000 <= GCC_VERSION ) )
|
||||
# define VULKAN_HPP_CONSTEXPR_20 constexpr
|
||||
# else
|
||||
# define VULKAN_HPP_CONSTEXPR_20
|
||||
@@ -233,6 +256,14 @@ VULKAN_HPP_COMPILE_WARNING( "This is a non-conforming implementation of C++ name
|
||||
# define VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS
|
||||
#endif
|
||||
|
||||
#if 17 <= VULKAN_HPP_CPP_VERSION
|
||||
# define VULKAN_HPP_MAYBE_UNUSED [[maybe_unused]]
|
||||
# define VULKAN_HPP_UNUSED( var )
|
||||
#else
|
||||
# define VULKAN_HPP_MAYBE_UNUSED
|
||||
# define VULKAN_HPP_UNUSED( var ) ( (void)( var ) )
|
||||
#endif
|
||||
|
||||
#if !defined( VULKAN_HPP_NAMESPACE )
|
||||
# define VULKAN_HPP_NAMESPACE vk
|
||||
#endif
|
||||
@@ -268,20 +299,6 @@ VULKAN_HPP_COMPILE_WARNING( "This is a non-conforming implementation of C++ name
|
||||
# endif
|
||||
#endif
|
||||
|
||||
namespace VULKAN_HPP_NAMESPACE
|
||||
{
|
||||
namespace detail
|
||||
{
|
||||
class DispatchLoaderDynamic;
|
||||
|
||||
#if !defined( VULKAN_HPP_DEFAULT_DISPATCHER )
|
||||
# if VULKAN_HPP_DISPATCH_LOADER_DYNAMIC == 1
|
||||
extern VULKAN_HPP_STORAGE_API DispatchLoaderDynamic defaultDispatchLoaderDynamic;
|
||||
# endif
|
||||
#endif
|
||||
} // namespace detail
|
||||
} // namespace VULKAN_HPP_NAMESPACE
|
||||
|
||||
#if !defined( VULKAN_HPP_DISPATCH_LOADER_DYNAMIC_TYPE )
|
||||
# define VULKAN_HPP_DISPATCH_LOADER_DYNAMIC_TYPE VULKAN_HPP_NAMESPACE::detail::DispatchLoaderDynamic
|
||||
#endif
|
||||
@@ -312,6 +329,8 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
# define VULKAN_HPP_DEFAULT_DISPATCHER ::VULKAN_HPP_NAMESPACE::detail::getDispatchLoaderStatic()
|
||||
# define VULKAN_HPP_DEFAULT_DISPATCH_LOADER_DYNAMIC_STORAGE
|
||||
# endif
|
||||
#else
|
||||
# define VULKAN_HPP_DEFAULT_DISPATCHER_HANDLED
|
||||
#endif
|
||||
|
||||
#if defined( VULKAN_HPP_NO_DEFAULT_DISPATCHER )
|
||||
|
||||
Vendored
+3680
-2194
File diff suppressed because it is too large
Load Diff
Vendored
+55
-34
@@ -8,13 +8,12 @@
|
||||
#ifndef VULKAN_SHARED_HPP
|
||||
#define VULKAN_SHARED_HPP
|
||||
|
||||
#include <vulkan/vulkan.hpp>
|
||||
|
||||
#if !defined( VULKAN_HPP_CXX_MODULE )
|
||||
# include <atomic> // std::atomic_size_t
|
||||
# include <vulkan/vulkan.hpp>
|
||||
#endif
|
||||
|
||||
namespace VULKAN_HPP_NAMESPACE
|
||||
VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
|
||||
{
|
||||
#if !defined( VULKAN_HPP_NO_SMART_HANDLE )
|
||||
template <typename HandleType>
|
||||
@@ -113,8 +112,8 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
{
|
||||
}
|
||||
|
||||
ReferenceCounter( const ReferenceCounter & ) = delete;
|
||||
ReferenceCounter & operator=( const ReferenceCounter & ) = delete;
|
||||
ReferenceCounter( ReferenceCounter const & ) = delete;
|
||||
ReferenceCounter & operator=( ReferenceCounter const & ) = delete;
|
||||
|
||||
public:
|
||||
size_t addRef() VULKAN_HPP_NOEXCEPT
|
||||
@@ -148,7 +147,7 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
{
|
||||
}
|
||||
|
||||
SharedHandleBase( const SharedHandleBase & o ) VULKAN_HPP_NOEXCEPT
|
||||
SharedHandleBase( SharedHandleBase const & o ) VULKAN_HPP_NOEXCEPT
|
||||
{
|
||||
o.addRef();
|
||||
m_handle = o.m_handle;
|
||||
@@ -163,7 +162,7 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
o.m_control = nullptr;
|
||||
}
|
||||
|
||||
SharedHandleBase & operator=( const SharedHandleBase & o ) VULKAN_HPP_NOEXCEPT
|
||||
SharedHandleBase & operator=( SharedHandleBase const & o ) VULKAN_HPP_NOEXCEPT
|
||||
{
|
||||
SharedHandleBase( o ).swap( *this );
|
||||
return *this;
|
||||
@@ -213,7 +212,7 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
}
|
||||
# endif
|
||||
|
||||
const HandleType * operator->() const VULKAN_HPP_NOEXCEPT
|
||||
HandleType const * operator->() const VULKAN_HPP_NOEXCEPT
|
||||
{
|
||||
return &m_handle;
|
||||
}
|
||||
@@ -235,25 +234,25 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
}
|
||||
|
||||
template <typename T = HandleType>
|
||||
typename std::enable_if<HasDestructor<T>::value, const SharedHandle<DestructorTypeOf<HandleType>> &>::type getDestructorType() const VULKAN_HPP_NOEXCEPT
|
||||
typename std::enable_if<HasDestructor<T>::value, SharedHandle<DestructorTypeOf<HandleType>> const &>::type getDestructorType() const VULKAN_HPP_NOEXCEPT
|
||||
{
|
||||
return getHeader().parent;
|
||||
}
|
||||
|
||||
protected:
|
||||
template <typename T = HandleType>
|
||||
static typename std::enable_if<!HasDestructor<T>::value, void>::type internalDestroy( const HeaderType & control, HandleType handle ) VULKAN_HPP_NOEXCEPT
|
||||
static typename std::enable_if<!HasDestructor<T>::value, void>::type internalDestroy( HeaderType const & control, HandleType handle ) VULKAN_HPP_NOEXCEPT
|
||||
{
|
||||
control.deleter.destroy( handle );
|
||||
}
|
||||
|
||||
template <typename T = HandleType>
|
||||
static typename std::enable_if<HasDestructor<T>::value, void>::type internalDestroy( const HeaderType & control, HandleType handle ) VULKAN_HPP_NOEXCEPT
|
||||
static typename std::enable_if<HasDestructor<T>::value, void>::type internalDestroy( HeaderType const & control, HandleType handle ) VULKAN_HPP_NOEXCEPT
|
||||
{
|
||||
control.deleter.destroy( control.parent.get(), handle );
|
||||
}
|
||||
|
||||
const HeaderType & getHeader() const VULKAN_HPP_NOEXCEPT
|
||||
HeaderType const & getHeader() const VULKAN_HPP_NOEXCEPT
|
||||
{
|
||||
return m_control->m_header;
|
||||
}
|
||||
@@ -295,7 +294,7 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
explicit SharedHandle( HandleType handle,
|
||||
SharedHandle<DestructorTypeOf<HandleType>> parent,
|
||||
SharedHandle<typename GetPoolType<HandleType>::type> pool,
|
||||
const Dispatcher & dispatch VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) VULKAN_HPP_NOEXCEPT
|
||||
Dispatcher const & dispatch VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) VULKAN_HPP_NOEXCEPT
|
||||
: BaseType( handle, std::move( parent ), DeleterType{ std::move( pool ), dispatch } )
|
||||
{
|
||||
}
|
||||
@@ -329,13 +328,13 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
|
||||
using DestroyFunctionPointerType =
|
||||
typename std::conditional<HasDestructor<HandleType>::value,
|
||||
void ( DestructorType::* )( HandleType, const AllocationCallbacks *, const Dispatcher & ) const,
|
||||
void ( HandleType::* )( const AllocationCallbacks *, const Dispatcher & ) const>::type;
|
||||
void ( DestructorType::* )( HandleType, AllocationCallbacks const *, Dispatcher const & ) const,
|
||||
void ( HandleType::* )( AllocationCallbacks const *, Dispatcher const & ) const>::type;
|
||||
|
||||
using SelectorType = typename std::conditional<HasDestructor<HandleType>::value, DestructorType, HandleType>::type;
|
||||
|
||||
ObjectDestroyShared( Optional<const AllocationCallbacks> allocationCallbacks VULKAN_HPP_DEFAULT_ASSIGNMENT( nullptr ),
|
||||
const Dispatcher & dispatch VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT )
|
||||
ObjectDestroyShared( Optional<AllocationCallbacks const> allocationCallbacks VULKAN_HPP_DEFAULT_ASSIGNMENT( nullptr ),
|
||||
Dispatcher const & dispatch VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT )
|
||||
: m_destroy( reinterpret_cast<decltype( m_destroy )>( static_cast<DestroyFunctionPointerType>( &SelectorType::destroy ) ) )
|
||||
, m_dispatch( &dispatch )
|
||||
, m_allocationCallbacks( allocationCallbacks )
|
||||
@@ -359,8 +358,8 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
|
||||
private:
|
||||
DestroyFunctionPointerType m_destroy = nullptr;
|
||||
const Dispatcher * m_dispatch = nullptr;
|
||||
Optional<const AllocationCallbacks> m_allocationCallbacks = nullptr;
|
||||
Dispatcher const * m_dispatch = nullptr;
|
||||
Optional<AllocationCallbacks const> m_allocationCallbacks = nullptr;
|
||||
};
|
||||
|
||||
template <typename HandleType, typename Dispatcher = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
|
||||
@@ -369,10 +368,10 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
public:
|
||||
using DestructorType = typename SharedHandleTraits<HandleType>::DestructorType;
|
||||
|
||||
using DestroyFunctionPointerType = void ( DestructorType::* )( HandleType, const AllocationCallbacks *, const Dispatcher & ) const;
|
||||
using DestroyFunctionPointerType = void ( DestructorType::* )( HandleType, AllocationCallbacks const *, Dispatcher const & ) const;
|
||||
|
||||
ObjectFreeShared( Optional<const AllocationCallbacks> allocationCallbacks VULKAN_HPP_DEFAULT_ASSIGNMENT( nullptr ),
|
||||
const Dispatcher & dispatch VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT )
|
||||
ObjectFreeShared( Optional<AllocationCallbacks const> allocationCallbacks VULKAN_HPP_DEFAULT_ASSIGNMENT( nullptr ),
|
||||
Dispatcher const & dispatch VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT )
|
||||
: m_destroy( reinterpret_cast<decltype( m_destroy )>( static_cast<DestroyFunctionPointerType>( &DestructorType::free ) ) )
|
||||
, m_dispatch( &dispatch )
|
||||
, m_allocationCallbacks( allocationCallbacks )
|
||||
@@ -388,8 +387,8 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
|
||||
private:
|
||||
DestroyFunctionPointerType m_destroy = nullptr;
|
||||
const Dispatcher * m_dispatch = nullptr;
|
||||
Optional<const AllocationCallbacks> m_allocationCallbacks = nullptr;
|
||||
Dispatcher const * m_dispatch = nullptr;
|
||||
Optional<AllocationCallbacks const> m_allocationCallbacks = nullptr;
|
||||
};
|
||||
|
||||
template <typename HandleType, typename Dispatcher = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
|
||||
@@ -398,9 +397,9 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
public:
|
||||
using DestructorType = typename SharedHandleTraits<HandleType>::DestructorType;
|
||||
|
||||
using DestroyFunctionPointerType = void ( DestructorType::* )( HandleType, const Dispatcher & ) const;
|
||||
using DestroyFunctionPointerType = void ( DestructorType::* )( HandleType, Dispatcher const & ) const;
|
||||
|
||||
ObjectReleaseShared( const Dispatcher & dispatch VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT )
|
||||
ObjectReleaseShared( Dispatcher const & dispatch VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT )
|
||||
: m_destroy( reinterpret_cast<decltype( m_destroy )>( static_cast<DestroyFunctionPointerType>( &DestructorType::release ) ) ), m_dispatch( &dispatch )
|
||||
{
|
||||
}
|
||||
@@ -414,7 +413,7 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
|
||||
private:
|
||||
DestroyFunctionPointerType m_destroy = nullptr;
|
||||
const Dispatcher * m_dispatch = nullptr;
|
||||
Dispatcher const * m_dispatch = nullptr;
|
||||
};
|
||||
|
||||
template <typename HandleType, typename PoolType, typename Dispatcher = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
|
||||
@@ -427,11 +426,11 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
|
||||
using ReturnType = decltype( std::declval<DestructorType>().free( PoolType(), 0u, nullptr, Dispatcher() ) );
|
||||
|
||||
using DestroyFunctionPointerType = ReturnType ( DestructorType::* )( PoolType, uint32_t, const HandleType *, const Dispatcher & ) const;
|
||||
using DestroyFunctionPointerType = ReturnType ( DestructorType::* )( PoolType, uint32_t, HandleType const *, Dispatcher const & ) const;
|
||||
|
||||
PoolFreeShared() = default;
|
||||
|
||||
PoolFreeShared( SharedHandle<PoolType> pool, const Dispatcher & dispatch VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT )
|
||||
PoolFreeShared( SharedHandle<PoolType> pool, Dispatcher const & dispatch VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT )
|
||||
: m_destroy( reinterpret_cast<decltype( m_destroy )>( static_cast<DestroyFunctionPointerType>( &DestructorType::free ) ) )
|
||||
, m_dispatch( &dispatch )
|
||||
, m_pool( std::move( pool ) )
|
||||
@@ -447,7 +446,7 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
|
||||
private:
|
||||
DestroyFunctionPointerType m_destroy = nullptr;
|
||||
const Dispatcher * m_dispatch = nullptr;
|
||||
Dispatcher const * m_dispatch = nullptr;
|
||||
SharedHandle<PoolType> m_pool{};
|
||||
};
|
||||
|
||||
@@ -825,6 +824,17 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
|
||||
using SharedDebugUtilsMessengerEXT = SharedHandle<DebugUtilsMessengerEXT>;
|
||||
|
||||
//=== VK_AMD_gpa_interface ===
|
||||
template <>
|
||||
class SharedHandleTraits<GpaSessionAMD>
|
||||
{
|
||||
public:
|
||||
using DestructorType = Device;
|
||||
using deleter = detail::ObjectDestroyShared<GpaSessionAMD>;
|
||||
};
|
||||
|
||||
using SharedGpaSessionAMD = SharedHandle<GpaSessionAMD>;
|
||||
|
||||
//=== VK_EXT_descriptor_heap ===
|
||||
template <>
|
||||
class SharedHandleTraits<TensorARM>
|
||||
@@ -1036,6 +1046,17 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
|
||||
using SharedIndirectExecutionSetEXT = SharedHandle<IndirectExecutionSetEXT>;
|
||||
|
||||
//=== VK_ARM_shader_instrumentation ===
|
||||
template <>
|
||||
class SharedHandleTraits<ShaderInstrumentationARM>
|
||||
{
|
||||
public:
|
||||
using DestructorType = Device;
|
||||
using deleter = detail::ObjectDestroyShared<ShaderInstrumentationARM>;
|
||||
};
|
||||
|
||||
using SharedShaderInstrumentationARM = SharedHandle<ShaderInstrumentationARM>;
|
||||
|
||||
// a number of SharedHandle specializations
|
||||
enum class SwapchainOwns
|
||||
{
|
||||
@@ -1075,7 +1096,7 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
}
|
||||
|
||||
protected:
|
||||
static void internalDestroy( const ImageHeader & control, Image handle ) VULKAN_HPP_NOEXCEPT
|
||||
static void internalDestroy( ImageHeader const & control, Image handle ) VULKAN_HPP_NOEXCEPT
|
||||
{
|
||||
if ( control.swapchainOwned == SwapchainOwns::no )
|
||||
{
|
||||
@@ -1120,7 +1141,7 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
}
|
||||
|
||||
public:
|
||||
const SharedHandle<SurfaceKHR> & getSurface() const VULKAN_HPP_NOEXCEPT
|
||||
SharedHandle<SurfaceKHR> const & getSurface() const VULKAN_HPP_NOEXCEPT
|
||||
{
|
||||
return getHeader().surface;
|
||||
}
|
||||
@@ -1135,13 +1156,13 @@ namespace VULKAN_HPP_NAMESPACE
|
||||
public:
|
||||
using SharedHandleBase<HandleType, DestructorType>::SharedHandleBase;
|
||||
|
||||
const DestructorType & getDestructorType() const VULKAN_HPP_NOEXCEPT
|
||||
DestructorType const & getDestructorType() const VULKAN_HPP_NOEXCEPT
|
||||
{
|
||||
return SharedHandleBase<HandleType, DestructorType>::getHeader();
|
||||
}
|
||||
|
||||
protected:
|
||||
static void internalDestroy( const DestructorType &, HandleType ) VULKAN_HPP_NOEXCEPT {}
|
||||
static void internalDestroy( DestructorType const &, HandleType ) VULKAN_HPP_NOEXCEPT {}
|
||||
};
|
||||
|
||||
//=== VK_VERSION_1_0 ===
|
||||
|
||||
+784
-224
File diff suppressed because it is too large
Load Diff
+20837
-9971
File diff suppressed because it is too large
Load Diff
+1092
-433
File diff suppressed because it is too large
Load Diff
Vendored
+54
-304
@@ -8,315 +8,65 @@ module;
|
||||
|
||||
#define VULKAN_HPP_CXX_MODULE 1
|
||||
|
||||
#if __has_include( <vk_video/vulkan_video_codecs_common.h> )
|
||||
# include <vk_video/vulkan_video_codecs_common.h>
|
||||
#endif
|
||||
#if __has_include( <vk_video/vulkan_video_codec_h264std.h> )
|
||||
# include <vk_video/vulkan_video_codec_h264std.h>
|
||||
#endif
|
||||
#if __has_include( <vk_video/vulkan_video_codec_h264std_decode.h> )
|
||||
# include <vk_video/vulkan_video_codec_h264std_decode.h>
|
||||
#endif
|
||||
#if __has_include( <vk_video/vulkan_video_codec_h264std_encode.h> )
|
||||
# include <vk_video/vulkan_video_codec_h264std_encode.h>
|
||||
#endif
|
||||
#if __has_include( <vk_video/vulkan_video_codec_h265std.h> )
|
||||
# include <vk_video/vulkan_video_codec_h265std.h>
|
||||
#endif
|
||||
#if __has_include( <vk_video/vulkan_video_codec_h265std_decode.h> )
|
||||
# include <vk_video/vulkan_video_codec_h265std_decode.h>
|
||||
#endif
|
||||
#if __has_include( <vk_video/vulkan_video_codec_h265std_encode.h> )
|
||||
# include <vk_video/vulkan_video_codec_h265std_encode.h>
|
||||
#endif
|
||||
#if __has_include( <vk_video/vulkan_video_codec_vp9std.h> )
|
||||
# include <vk_video/vulkan_video_codec_vp9std.h>
|
||||
#endif
|
||||
#if __has_include( <vk_video/vulkan_video_codec_vp9std_decode.h> )
|
||||
# include <vk_video/vulkan_video_codec_vp9std_decode.h>
|
||||
#endif
|
||||
#if __has_include( <vk_video/vulkan_video_codec_av1std.h> )
|
||||
# include <vk_video/vulkan_video_codec_av1std.h>
|
||||
#endif
|
||||
#if __has_include( <vk_video/vulkan_video_codec_av1std_decode.h> )
|
||||
# include <vk_video/vulkan_video_codec_av1std_decode.h>
|
||||
#endif
|
||||
#if __has_include( <vk_video/vulkan_video_codec_av1std_encode.h> )
|
||||
# include <vk_video/vulkan_video_codec_av1std_encode.h>
|
||||
#endif
|
||||
|
||||
// clang-format off
|
||||
#include <vulkan/vulkan_hpp_macros.hpp>
|
||||
// clang-format on
|
||||
|
||||
#if !defined( VULKAN_HPP_CXX_MODULE_EXPERIMENTAL_WARNING )
|
||||
# define VULKAN_HPP_CXX_MODULE_EXPERIMENTAL_WARNING \
|
||||
"\n\tThe Vulkan-Hpp C++ named module is experimental. It is subject to change without prior notice.\n" \
|
||||
"\tTo silence this warning, define the VULKAN_HPP_CXX_MODULE_EXPERIMENTAL_WARNING macro.\n" \
|
||||
"\tFor feedback, go to: https://github.com/KhronosGroup/Vulkan-Hpp/issues"
|
||||
export module vulkan_video;
|
||||
|
||||
VULKAN_HPP_COMPILE_WARNING( VULKAN_HPP_CXX_MODULE_EXPERIMENTAL_WARNING )
|
||||
import vulkan;
|
||||
|
||||
#if defined( _MSC_VER )
|
||||
# pragma warning( push )
|
||||
# pragma warning( disable : 5244 )
|
||||
#elif defined( __clang__ )
|
||||
# pragma clang diagnostic push
|
||||
# pragma clang diagnostic ignored "-Winclude-angled-in-module-purview"
|
||||
#elif defined( __GNUC__ )
|
||||
#endif
|
||||
|
||||
#include <vulkan/vulkan_video.hpp>
|
||||
|
||||
export module vulkan:video;
|
||||
|
||||
export namespace VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE
|
||||
{
|
||||
//=================
|
||||
//=== CONSTANTs ===
|
||||
//=================
|
||||
|
||||
#if defined( VULKAN_VIDEO_CODEC_H264STD_H_ )
|
||||
//=== vulkan_video_codec_h264std ===
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264CpbCntListSize;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264MaxChromaPlanes;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264MaxNumListRef;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264NoReferencePicture;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264ScalingList4X4NumElements;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264ScalingList4X4NumLists;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264ScalingList8X8NumElements;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264ScalingList8X8NumLists;
|
||||
#if defined( _MSC_VER )
|
||||
# pragma warning( pop )
|
||||
#elif defined( __clang__ )
|
||||
# pragma clang diagnostic pop
|
||||
#elif defined( __GNUC__ )
|
||||
#endif
|
||||
|
||||
#if defined( VULKAN_VIDEO_CODEC_H264STD_DECODE_H_ )
|
||||
//=== vulkan_video_codec_h264std_decode ===
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::DecodeH264FieldOrderCountListSize;
|
||||
#endif
|
||||
|
||||
#if defined( VULKAN_VIDEO_CODEC_H265STD_H_ )
|
||||
//=== vulkan_video_codec_h265std ===
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265ChromaQpOffsetListSize;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265ChromaQpOffsetTileColsListSize;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265ChromaQpOffsetTileRowsListSize;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265CpbCntListSize;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265MaxChromaPlanes;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265MaxDeltaPoc;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265MaxDpbSize;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265MaxLongTermPics;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265MaxLongTermRefPicsSps;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265MaxNumListRef;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265MaxShortTermRefPicSets;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265NoReferencePicture;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265PredictorPaletteCompEntriesListSize;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265PredictorPaletteComponentsListSize;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265ScalingList16X16NumElements;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265ScalingList16X16NumLists;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265ScalingList32X32NumElements;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265ScalingList32X32NumLists;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265ScalingList4X4NumElements;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265ScalingList4X4NumLists;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265ScalingList8X8NumElements;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265ScalingList8X8NumLists;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265SublayersListSize;
|
||||
#endif
|
||||
|
||||
#if defined( VULKAN_VIDEO_CODEC_H265STD_DECODE_H_ )
|
||||
//=== vulkan_video_codec_h265std_decode ===
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::DecodeH265RefPicSetListSize;
|
||||
#endif
|
||||
|
||||
#if defined( VULKAN_VIDEO_CODEC_VP9STD_H_ )
|
||||
//=== vulkan_video_codec_vp9std ===
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::Vp9LoopFilterAdjustments;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::Vp9MaxRefFrames;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::Vp9MaxSegmentationPredProb;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::Vp9MaxSegmentationTreeProbs;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::Vp9MaxSegments;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::Vp9NumRefFrames;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::Vp9RefsPerFrame;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::Vp9SegLvlMax;
|
||||
#endif
|
||||
|
||||
#if defined( VULKAN_VIDEO_CODEC_AV1STD_H_ )
|
||||
//=== vulkan_video_codec_av1std ===
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::Av1GlobalMotionParams;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::Av1LoopFilterAdjustments;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::Av1MaxCdefFilterStrengths;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::Av1MaxLoopFilterStrengths;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::Av1MaxNumCbPoints;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::Av1MaxNumCrPoints;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::Av1MaxNumPlanes;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::Av1MaxNumPosChroma;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::Av1MaxNumPosLuma;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::Av1MaxNumYPoints;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::Av1MaxSegments;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::Av1MaxTileCols;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::Av1MaxTileRows;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::Av1NumRefFrames;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::Av1PrimaryRefNone;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::Av1RefsPerFrame;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::Av1SegLvlMax;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::Av1SelectIntegerMv;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::Av1SelectScreenContentTools;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::Av1SkipModeFrames;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::Av1TotalRefsPerFrame;
|
||||
#endif
|
||||
|
||||
//=============
|
||||
//=== ENUMs ===
|
||||
//=============
|
||||
|
||||
#if defined( VULKAN_VIDEO_CODEC_H264STD_H_ )
|
||||
//=== vulkan_video_codec_h264std ===
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264AspectRatioIdc;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264CabacInitIdc;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264ChromaFormatIdc;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264DisableDeblockingFilterIdc;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264LevelIdc;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264MemMgmtControlOp;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264ModificationOfPicNumsIdc;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264NonVclNaluType;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264PictureType;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264PocType;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264ProfileIdc;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264SliceType;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264WeightedBipredIdc;
|
||||
#endif
|
||||
|
||||
#if defined( VULKAN_VIDEO_CODEC_H264STD_DECODE_H_ )
|
||||
//=== vulkan_video_codec_h264std_decode ===
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::DecodeH264FieldOrderCount;
|
||||
#endif
|
||||
|
||||
#if defined( VULKAN_VIDEO_CODEC_H265STD_H_ )
|
||||
//=== vulkan_video_codec_h265std ===
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265AspectRatioIdc;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265ChromaFormatIdc;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265LevelIdc;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265PictureType;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265ProfileIdc;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265SliceType;
|
||||
#endif
|
||||
|
||||
#if defined( VULKAN_VIDEO_CODEC_VP9STD_H_ )
|
||||
//=== vulkan_video_codec_vp9std ===
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::VP9ColorSpace;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::VP9FrameType;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::VP9InterpolationFilter;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::VP9Level;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::VP9Profile;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::VP9ReferenceName;
|
||||
#endif
|
||||
|
||||
#if defined( VULKAN_VIDEO_CODEC_AV1STD_H_ )
|
||||
//=== vulkan_video_codec_av1std ===
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1ChromaSamplePosition;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1ColorPrimaries;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1FrameRestorationType;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1FrameType;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1InterpolationFilter;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1Level;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1MatrixCoefficients;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1Profile;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1ReferenceName;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1TransferCharacteristics;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1TxMode;
|
||||
#endif
|
||||
|
||||
//===============
|
||||
//=== STRUCTS ===
|
||||
//===============
|
||||
|
||||
#if defined( VULKAN_VIDEO_CODEC_H264STD_H_ )
|
||||
//=== vulkan_video_codec_h264std ===
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264HrdParameters;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264PictureParameterSet;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264PpsFlags;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264ScalingLists;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264SequenceParameterSet;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264SequenceParameterSetVui;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264SpsFlags;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264SpsVuiFlags;
|
||||
#endif
|
||||
|
||||
#if defined( VULKAN_VIDEO_CODEC_H264STD_DECODE_H_ )
|
||||
//=== vulkan_video_codec_h264std_decode ===
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::DecodeH264PictureInfo;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::DecodeH264PictureInfoFlags;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::DecodeH264ReferenceInfo;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::DecodeH264ReferenceInfoFlags;
|
||||
#endif
|
||||
|
||||
#if defined( VULKAN_VIDEO_CODEC_H264STD_ENCODE_H_ )
|
||||
//=== vulkan_video_codec_h264std_encode ===
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH264PictureInfo;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH264PictureInfoFlags;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH264ReferenceInfo;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH264ReferenceInfoFlags;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH264ReferenceListsInfo;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH264ReferenceListsInfoFlags;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH264RefListModEntry;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH264RefPicMarkingEntry;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH264SliceHeader;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH264SliceHeaderFlags;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH264WeightTable;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH264WeightTableFlags;
|
||||
#endif
|
||||
|
||||
#if defined( VULKAN_VIDEO_CODEC_H265STD_H_ )
|
||||
//=== vulkan_video_codec_h265std ===
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265DecPicBufMgr;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265HrdFlags;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265HrdParameters;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265LongTermRefPicsSps;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265PictureParameterSet;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265PpsFlags;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265PredictorPaletteEntries;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265ProfileTierLevel;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265ProfileTierLevelFlags;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265ScalingLists;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265SequenceParameterSet;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265SequenceParameterSetVui;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265ShortTermRefPicSet;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265ShortTermRefPicSetFlags;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265SpsFlags;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265SpsVuiFlags;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265SubLayerHrdParameters;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265VideoParameterSet;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265VpsFlags;
|
||||
#endif
|
||||
|
||||
#if defined( VULKAN_VIDEO_CODEC_H265STD_DECODE_H_ )
|
||||
//=== vulkan_video_codec_h265std_decode ===
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::DecodeH265PictureInfo;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::DecodeH265PictureInfoFlags;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::DecodeH265ReferenceInfo;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::DecodeH265ReferenceInfoFlags;
|
||||
#endif
|
||||
|
||||
#if defined( VULKAN_VIDEO_CODEC_H265STD_ENCODE_H_ )
|
||||
//=== vulkan_video_codec_h265std_encode ===
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH265LongTermRefPics;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH265PictureInfo;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH265PictureInfoFlags;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH265ReferenceInfo;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH265ReferenceInfoFlags;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH265ReferenceListsInfo;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH265ReferenceListsInfoFlags;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH265SliceSegmentHeader;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH265SliceSegmentHeaderFlags;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH265WeightTable;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH265WeightTableFlags;
|
||||
#endif
|
||||
|
||||
#if defined( VULKAN_VIDEO_CODEC_VP9STD_H_ )
|
||||
//=== vulkan_video_codec_vp9std ===
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::VP9ColorConfig;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::VP9ColorConfigFlags;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::VP9LoopFilter;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::VP9LoopFilterFlags;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::VP9Segmentation;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::VP9SegmentationFlags;
|
||||
#endif
|
||||
|
||||
#if defined( VULKAN_VIDEO_CODEC_VP9STD_DECODE_H_ )
|
||||
//=== vulkan_video_codec_vp9std_decode ===
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::DecodeVP9PictureInfo;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::DecodeVP9PictureInfoFlags;
|
||||
#endif
|
||||
|
||||
#if defined( VULKAN_VIDEO_CODEC_AV1STD_H_ )
|
||||
//=== vulkan_video_codec_av1std ===
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1CDEF;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1ColorConfig;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1ColorConfigFlags;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1FilmGrain;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1FilmGrainFlags;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1GlobalMotion;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1LoopFilter;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1LoopFilterFlags;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1LoopRestoration;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1Quantization;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1QuantizationFlags;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1Segmentation;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1SequenceHeader;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1SequenceHeaderFlags;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1TileInfo;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1TileInfoFlags;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1TimingInfo;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1TimingInfoFlags;
|
||||
#endif
|
||||
|
||||
#if defined( VULKAN_VIDEO_CODEC_AV1STD_DECODE_H_ )
|
||||
//=== vulkan_video_codec_av1std_decode ===
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::DecodeAV1PictureInfo;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::DecodeAV1PictureInfoFlags;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::DecodeAV1ReferenceInfo;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::DecodeAV1ReferenceInfoFlags;
|
||||
#endif
|
||||
|
||||
#if defined( VULKAN_VIDEO_CODEC_AV1STD_ENCODE_H_ )
|
||||
//=== vulkan_video_codec_av1std_encode ===
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeAV1DecoderModelInfo;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeAV1ExtensionHeader;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeAV1OperatingPointInfo;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeAV1OperatingPointInfoFlags;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeAV1PictureInfo;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeAV1PictureInfoFlags;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeAV1ReferenceInfo;
|
||||
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeAV1ReferenceInfoFlags;
|
||||
#endif
|
||||
} // namespace VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE
|
||||
|
||||
Vendored
+378
-796
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user