mirror of
https://github.com/seekrs/MacroLibX.git
synced 2026-04-25 16:21:26 +02:00
Indev (#130)
This commit is contained in:
0
in_depth_features/build.sh → in_depth_features/GetProcAddr/build.sh
git.filemode.changed_filemode%!(EXTRA template.HTML=git.filemode.executable_file, template.HTML=git.filemode.normal_file)
0
in_depth_features/build.sh → in_depth_features/GetProcAddr/build.sh
git.filemode.changed_filemode%!(EXTRA template.HTML=git.filemode.executable_file, template.HTML=git.filemode.normal_file)
28
in_depth_features/GetProcAddr/main.c
git.filemode.normal_file
28
in_depth_features/GetProcAddr/main.c
git.filemode.normal_file
@@ -0,0 +1,28 @@
|
|||||||
|
#include <stdio.h>
|
||||||
|
#include <stddef.h>
|
||||||
|
#include "../../includes/mlx.h"
|
||||||
|
#include "../../includes/mlx_extended.h"
|
||||||
|
|
||||||
|
#include <vulkan/vulkan_core.h>
|
||||||
|
|
||||||
|
typedef VkInstance (*PFN_mlx_get_vk_instance)(mlx_context mlx);
|
||||||
|
|
||||||
|
int main(void)
|
||||||
|
{
|
||||||
|
mlx_context mlx = mlx_init();
|
||||||
|
|
||||||
|
mlx_window_create_info info = { 0 };
|
||||||
|
info.title = "My window";
|
||||||
|
info.width = 400;
|
||||||
|
info.height = 400;
|
||||||
|
info.is_resizable = true;
|
||||||
|
mlx_window win = mlx_new_window(mlx, &info);
|
||||||
|
|
||||||
|
PFN_mlx_get_vk_instance mlx_get_vk_instance = (PFN_mlx_get_vk_instance)mlx_get_proc_addr(mlx, "mlx_get_vk_instance");
|
||||||
|
printf("%p\n", mlx_get_vk_instance(mlx));
|
||||||
|
|
||||||
|
mlx_destroy_window(mlx, win);
|
||||||
|
mlx_destroy_context(mlx);
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
11
in_depth_features/RTT/build.sh
git.filemode.executable_file
11
in_depth_features/RTT/build.sh
git.filemode.executable_file
@@ -0,0 +1,11 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
if [ -e a.out ]; then
|
||||||
|
rm a.out
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ $(uname -s) = 'Darwin' ]; then
|
||||||
|
clang main.c ../../libmlx.dylib -L /opt/homebrew/lib -lSDL2 -lm -g;
|
||||||
|
else
|
||||||
|
clang main.c ../../libmlx.so -lSDL2 -g -Wall -Wextra -Werror -lm;
|
||||||
|
fi
|
||||||
4
in_depth_features/RTT/run.sh
git.filemode.executable_file
4
in_depth_features/RTT/run.sh
git.filemode.executable_file
@@ -0,0 +1,4 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
bash ./build.sh
|
||||||
|
./a.out
|
||||||
@@ -6,7 +6,7 @@
|
|||||||
/* By: maldavid <contact@kbz8.me> +#+ +:+ +#+ */
|
/* By: maldavid <contact@kbz8.me> +#+ +:+ +#+ */
|
||||||
/* +#+#+#+#+#+ +#+ */
|
/* +#+#+#+#+#+ +#+ */
|
||||||
/* Created: 2022/10/04 16:56:35 by maldavid #+# #+# */
|
/* Created: 2022/10/04 16:56:35 by maldavid #+# #+# */
|
||||||
/* Updated: 2025/01/05 22:44:22 by maldavid ### ########.fr */
|
/* Updated: 2025/03/12 22:26:32 by maldavid ### ########.fr */
|
||||||
/* */
|
/* */
|
||||||
/* ************************************************************************** */
|
/* ************************************************************************** */
|
||||||
|
|
||||||
@@ -71,7 +71,7 @@ typedef union mlx_color
|
|||||||
/**
|
/**
|
||||||
* @brief Initializes the MLX internal application
|
* @brief Initializes the MLX internal application
|
||||||
*
|
*
|
||||||
* @return (mlx_context) An opaque handler to the internal MLX application or NULL (0x0) in case of error
|
* @return (mlx_context) An opaque handler to the internal MLX application or MLX_NULL_HANDLE (0x0) in case of error
|
||||||
*/
|
*/
|
||||||
MLX_API mlx_context mlx_init();
|
MLX_API mlx_context mlx_init();
|
||||||
|
|
||||||
@@ -122,7 +122,7 @@ typedef struct mlx_window_create_info
|
|||||||
* @param mlx Internal MLX application
|
* @param mlx Internal MLX application
|
||||||
* @param info Pointer to a descriptor structure
|
* @param info Pointer to a descriptor structure
|
||||||
*
|
*
|
||||||
* @return (mlx_widnow) An opaque handler to the internal MLX window or NULL (0x0) in case of error
|
* @return (mlx_window) An opaque handler to the internal MLX window or MLX_NULL_HANDLE (0x0) in case of error
|
||||||
*/
|
*/
|
||||||
MLX_API mlx_window mlx_new_window(mlx_context mlx, const mlx_window_create_info* info);
|
MLX_API mlx_window mlx_new_window(mlx_context mlx, const mlx_window_create_info* info);
|
||||||
|
|
||||||
@@ -328,7 +328,7 @@ MLX_API void mlx_pixel_put(mlx_context mlx, mlx_window win, int x, int y, mlx_co
|
|||||||
* @param width Width of the image
|
* @param width Width of the image
|
||||||
* @param height Height of the image
|
* @param height Height of the image
|
||||||
*
|
*
|
||||||
* @return (mlx_image) An opaque handler to the internal image or NULL (0x0) in case of error
|
* @return (mlx_image) An opaque handler to the internal image or MLX_NULL_HANDLE (0x0) in case of error
|
||||||
*/
|
*/
|
||||||
MLX_API mlx_image mlx_new_image(mlx_context mlx, int width, int height);
|
MLX_API mlx_image mlx_new_image(mlx_context mlx, int width, int height);
|
||||||
|
|
||||||
@@ -340,7 +340,7 @@ MLX_API mlx_image mlx_new_image(mlx_context mlx, int width, int height);
|
|||||||
* @param width Get the width of the image
|
* @param width Get the width of the image
|
||||||
* @param heigth Get the height of the image
|
* @param heigth Get the height of the image
|
||||||
*
|
*
|
||||||
* @return (mlx_image) An opaque handler to the internal image or NULL (0x0) in case of error
|
* @return (mlx_image) An opaque handler to the internal image or MLX_NULL_HANDLE (0x0) in case of error
|
||||||
*/
|
*/
|
||||||
MLX_API mlx_image mlx_new_image_from_file(mlx_context mlx, char* filename, int* width, int* height);
|
MLX_API mlx_image mlx_new_image_from_file(mlx_context mlx, char* filename, int* width, int* height);
|
||||||
|
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
/* By: maldavid <contact@kbz8.me> +#+ +:+ +#+ */
|
/* By: maldavid <contact@kbz8.me> +#+ +:+ +#+ */
|
||||||
/* +#+#+#+#+#+ +#+ */
|
/* +#+#+#+#+#+ +#+ */
|
||||||
/* Created: 2024/12/14 16:17:10 by maldavid #+# #+# */
|
/* Created: 2024/12/14 16:17:10 by maldavid #+# #+# */
|
||||||
/* Updated: 2025/01/08 12:37:15 by maldavid ### ########.fr */
|
/* Updated: 2025/03/12 22:03:45 by maldavid ### ########.fr */
|
||||||
/* */
|
/* */
|
||||||
/* ************************************************************************** */
|
/* ************************************************************************** */
|
||||||
|
|
||||||
@@ -171,6 +171,15 @@ MLX_API void mlx_set_image_region(mlx_context mlx, mlx_image image, int x, int y
|
|||||||
*/
|
*/
|
||||||
MLX_API void mlx_put_transformed_image_to_window(mlx_context mlx, mlx_window win, mlx_image image, int x, int y, float scale_x, float scale_y, float angle);
|
MLX_API void mlx_put_transformed_image_to_window(mlx_context mlx, mlx_window win, mlx_image image, int x, int y, float scale_x, float scale_y, float angle);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Get direct pointers to hidden functions
|
||||||
|
*
|
||||||
|
* @param mlx Internal MLX application
|
||||||
|
*
|
||||||
|
* @return (mlx_function) A function pointer or NULL (0x0) in case of error
|
||||||
|
*/
|
||||||
|
MLX_API mlx_function mlx_get_proc_addr(mlx_context mlx, const char* name);
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
/* By: maldavid <kbz_8.dev@akel-engine.com> +#+ +:+ +#+ */
|
/* By: maldavid <kbz_8.dev@akel-engine.com> +#+ +:+ +#+ */
|
||||||
/* +#+#+#+#+#+ +#+ */
|
/* +#+#+#+#+#+ +#+ */
|
||||||
/* Created: 2023/11/10 08:49:17 by maldavid #+# #+# */
|
/* Created: 2023/11/10 08:49:17 by maldavid #+# #+# */
|
||||||
/* Updated: 2025/01/07 00:17:45 by maldavid ### ########.fr */
|
/* Updated: 2025/03/12 22:01:07 by maldavid ### ########.fr */
|
||||||
/* */
|
/* */
|
||||||
/* ************************************************************************** */
|
/* ************************************************************************** */
|
||||||
|
|
||||||
@@ -202,6 +202,9 @@
|
|||||||
#define MLX_VERSION_PATCH(version) ((uint32_t)(version) & 0xFFFU)
|
#define MLX_VERSION_PATCH(version) ((uint32_t)(version) & 0xFFFU)
|
||||||
|
|
||||||
#define MLX_DEFINE_HANDLE(object) typedef struct object##_handler* object
|
#define MLX_DEFINE_HANDLE(object) typedef struct object##_handler* object
|
||||||
|
#define MLX_NULL_HANDLE NULL
|
||||||
|
|
||||||
|
typedef void (*mlx_function)(void);
|
||||||
|
|
||||||
#define MLX_VERSION MLX_MAKE_VERSION(2, 0, 0)
|
#define MLX_VERSION MLX_MAKE_VERSION(2, 0, 0)
|
||||||
#define MLX_TARGET_VULKAN_API_VERSION MLX_MAKE_VERSION(1, 0, 0)
|
#define MLX_TARGET_VULKAN_API_VERSION MLX_MAKE_VERSION(1, 0, 0)
|
||||||
|
|||||||
@@ -14,6 +14,8 @@ namespace mlx
|
|||||||
Handle CreateWindow(const mlx_window_create_info* info, std::int32_t& id, bool hidden);
|
Handle CreateWindow(const mlx_window_create_info* info, std::int32_t& id, bool hidden);
|
||||||
void DestroyWindow(Handle window) noexcept;
|
void DestroyWindow(Handle window) noexcept;
|
||||||
|
|
||||||
|
SDL_Window* GetRawWindow(Handle window) noexcept;
|
||||||
|
|
||||||
void InputsFetcher(std::function<void(mlx_event_type, int, int)> functor);
|
void InputsFetcher(std::function<void(mlx_event_type, int, int)> functor);
|
||||||
|
|
||||||
VkSurfaceKHR CreateVulkanSurface(Handle window, VkInstance instance) const noexcept;
|
VkSurfaceKHR CreateVulkanSurface(Handle window, VkInstance instance) const noexcept;
|
||||||
|
|||||||
@@ -38,6 +38,8 @@ namespace mlx
|
|||||||
MLX_FORCEINLINE std::vector<const char*> GetRequiredVulkanInstanceExtentions() const noexcept { return SDLManager::Get().GetRequiredVulkanInstanceExtentions(p_window); }
|
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); }
|
MLX_FORCEINLINE Vec2ui GetVulkanDrawableSize() const noexcept { return SDLManager::Get().GetVulkanDrawableSize(p_window); }
|
||||||
|
|
||||||
|
[[nodiscard]] inline Handle GetRawHandle() const noexcept { return p_window; }
|
||||||
|
|
||||||
void Destroy() noexcept;
|
void Destroy() noexcept;
|
||||||
|
|
||||||
~Window() { Destroy(); }
|
~Window() { Destroy(); }
|
||||||
|
|||||||
@@ -2,11 +2,11 @@
|
|||||||
|
|
||||||
#include <Core/Application.h>
|
#include <Core/Application.h>
|
||||||
#include <Core/SDLManager.h>
|
#include <Core/SDLManager.h>
|
||||||
#include <Renderer/RenderCore.h>
|
|
||||||
#include <mlx.h>
|
#include <mlx.h>
|
||||||
#include <mlx_extended.h>
|
#include <mlx_extended.h>
|
||||||
#include <Core/Memory.h>
|
#include <Core/Memory.h>
|
||||||
#include <Core/Handles.h>
|
#include <Core/Handles.h>
|
||||||
|
#include <Renderer/RenderCore.h>
|
||||||
|
|
||||||
static mlx::Application* __internal_application_ptr = nullptr;
|
static mlx::Application* __internal_application_ptr = nullptr;
|
||||||
|
|
||||||
@@ -427,4 +427,63 @@ extern "C"
|
|||||||
return;
|
return;
|
||||||
gs->TexturePut(texture, x, y, scale_x, scale_y, angle);
|
gs->TexturePut(texture, x, y, scale_x, scale_y, angle);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Hidden bindings
|
||||||
|
|
||||||
|
VkInstance mlx_get_vk_instance(mlx_context mlx)
|
||||||
|
{
|
||||||
|
MLX_CHECK_APPLICATION_POINTER(mlx);
|
||||||
|
return mlx::RenderCore::Get().GetInstance();
|
||||||
|
}
|
||||||
|
|
||||||
|
VkPhysicalDevice mlx_get_vk_physical_device(mlx_context mlx)
|
||||||
|
{
|
||||||
|
MLX_CHECK_APPLICATION_POINTER(mlx);
|
||||||
|
return mlx::RenderCore::Get().GetPhysicalDevice();
|
||||||
|
}
|
||||||
|
|
||||||
|
VkDevice mlx_get_vk_device(mlx_context mlx)
|
||||||
|
{
|
||||||
|
MLX_CHECK_APPLICATION_POINTER(mlx);
|
||||||
|
return mlx::RenderCore::Get().GetDevice();
|
||||||
|
}
|
||||||
|
|
||||||
|
mlx_function mlx_get_vk_fn(const char* name)
|
||||||
|
{
|
||||||
|
#define MLX_VULKAN_GLOBAL_FUNCTION(fn) if(std::strcmp(name, #fn) == 0) return reinterpret_cast<mlx_function>(mlx::RenderCore::Get().fn);
|
||||||
|
#define MLX_VULKAN_INSTANCE_FUNCTION(fn) if(std::strcmp(name, #fn) == 0) return reinterpret_cast<mlx_function>(mlx::RenderCore::Get().fn);
|
||||||
|
#define MLX_VULKAN_DEVICE_FUNCTION(fn) if(std::strcmp(name, #fn) == 0) return reinterpret_cast<mlx_function>(mlx::RenderCore::Get().fn);
|
||||||
|
#include <Renderer/Vulkan/VulkanDefs.h>
|
||||||
|
#undef MLX_VULKAN_GLOBAL_FUNCTION
|
||||||
|
#undef MLX_VULKAN_INSTANCE_FUNCTION
|
||||||
|
#undef MLX_VULKAN_DEVICE_FUNCTION
|
||||||
|
|
||||||
|
return nullptr;
|
||||||
|
}
|
||||||
|
|
||||||
|
void* mlx_get_window_handle(mlx_context mlx, mlx_window win)
|
||||||
|
{
|
||||||
|
MLX_CHECK_APPLICATION_POINTER(mlx);
|
||||||
|
mlx::NonOwningPtr<mlx::GraphicsSupport> gs = mlx->app->GetGraphicsSupport(win);
|
||||||
|
if(!gs || !gs->HasWindow())
|
||||||
|
return nullptr;
|
||||||
|
return mlx::SDLManager::Get().GetRawWindow(gs->GetWindow()->GetRawHandle());
|
||||||
|
}
|
||||||
|
|
||||||
|
mlx_function mlx_get_proc_addr(mlx_context mlx, const char* name)
|
||||||
|
{
|
||||||
|
MLX_CHECK_APPLICATION_POINTER(mlx);
|
||||||
|
#define MLX_MAKE_ENTRY(fn) { #fn, reinterpret_cast<mlx_function>(fn) }
|
||||||
|
std::unordered_map<std::string, mlx_function> entries = {
|
||||||
|
MLX_MAKE_ENTRY(mlx_get_vk_instance),
|
||||||
|
MLX_MAKE_ENTRY(mlx_get_vk_physical_device),
|
||||||
|
MLX_MAKE_ENTRY(mlx_get_vk_device),
|
||||||
|
MLX_MAKE_ENTRY(mlx_get_vk_fn),
|
||||||
|
MLX_MAKE_ENTRY(mlx_get_window_handle),
|
||||||
|
};
|
||||||
|
auto it = entries.find(std::string{ name });
|
||||||
|
if(it != entries.end())
|
||||||
|
return it->second;
|
||||||
|
return nullptr;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -22,7 +22,7 @@ namespace mlx
|
|||||||
using namespace std::literals;
|
using namespace std::literals;
|
||||||
|
|
||||||
#ifndef DEBUG
|
#ifndef DEBUG
|
||||||
if(type == LogType::Debug)
|
if(type == LogType::Debug && std::getenv("MLX_DEBUG_LOGS") == nullptr)
|
||||||
return;
|
return;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|||||||
@@ -31,6 +31,8 @@ namespace mlx
|
|||||||
SDL_SetHint(SDL_HINT_VIDEODRIVER, "wayland,x11");
|
SDL_SetHint(SDL_HINT_VIDEODRIVER, "wayland,x11");
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
//SDL_SetHintWithPriority(SDL_HINT_SHUTDOWN_DBUS_ON_QUIT, "1", SDL_HINT_OVERRIDE);
|
||||||
|
|
||||||
if(SDL_Init(SDL_INIT_VIDEO | SDL_INIT_EVENTS | SDL_INIT_TIMER) != 0)
|
if(SDL_Init(SDL_INIT_VIDEO | SDL_INIT_EVENTS | SDL_INIT_TIMER) != 0)
|
||||||
FatalError("SDL: unable to init all subsystems; %", SDL_GetError());
|
FatalError("SDL: unable to init all subsystems; %", SDL_GetError());
|
||||||
DebugLog("SDL Manager initialized");
|
DebugLog("SDL Manager initialized");
|
||||||
@@ -78,6 +80,12 @@ namespace mlx
|
|||||||
delete infos;
|
delete infos;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
SDL_Window* SDLManager::GetRawWindow(Handle window) noexcept
|
||||||
|
{
|
||||||
|
Internal::WindowInfos* infos = static_cast<Internal::WindowInfos*>(window);
|
||||||
|
return infos->window;
|
||||||
|
}
|
||||||
|
|
||||||
VkSurfaceKHR SDLManager::CreateVulkanSurface(Handle window, VkInstance instance) const noexcept
|
VkSurfaceKHR SDLManager::CreateVulkanSurface(Handle window, VkInstance instance) const noexcept
|
||||||
{
|
{
|
||||||
VkSurfaceKHR surface;
|
VkSurfaceKHR surface;
|
||||||
@@ -252,6 +260,7 @@ namespace mlx
|
|||||||
case SDL_WINDOWEVENT_FOCUS_GAINED: functor(MLX_WINDOW_EVENT, id, 5); break;
|
case SDL_WINDOWEVENT_FOCUS_GAINED: functor(MLX_WINDOW_EVENT, id, 5); break;
|
||||||
case SDL_WINDOWEVENT_LEAVE: functor(MLX_WINDOW_EVENT, id, 6); break;
|
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_FOCUS_LOST: functor(MLX_WINDOW_EVENT, id, 7); break;
|
||||||
|
case SDL_WINDOWEVENT_SIZE_CHANGED: functor(MLX_WINDOW_EVENT, id, 8); break;
|
||||||
|
|
||||||
default : break;
|
default : break;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,11 +1,19 @@
|
|||||||
#include <PreCompiled.h>
|
#include <PreCompiled.h>
|
||||||
|
|
||||||
#include <mlx.h>
|
|
||||||
#include <Platform/Inputs.h>
|
#include <Platform/Inputs.h>
|
||||||
#include <Core/SDLManager.h>
|
#include <Core/SDLManager.h>
|
||||||
|
#include <Core/EventBus.h>
|
||||||
|
|
||||||
namespace mlx
|
namespace mlx
|
||||||
{
|
{
|
||||||
|
namespace Internal
|
||||||
|
{
|
||||||
|
struct ResizeEventBroadcast : public EventBase
|
||||||
|
{
|
||||||
|
Event What() const override { return Event::ResizeEventCode; }
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
void Inputs::FetchInputs()
|
void Inputs::FetchInputs()
|
||||||
{
|
{
|
||||||
SDLManager::Get().InputsFetcher([this](mlx_event_type event, int window_id, int code)
|
SDLManager::Get().InputsFetcher([this](mlx_event_type event, int window_id, int code)
|
||||||
@@ -14,6 +22,8 @@ namespace mlx
|
|||||||
return;
|
return;
|
||||||
if(!m_events_hooks.contains(window_id) || m_events_hooks[window_id][event].empty())
|
if(!m_events_hooks.contains(window_id) || m_events_hooks[window_id][event].empty())
|
||||||
return;
|
return;
|
||||||
|
if(event == MLX_WINDOW_EVENT && code == 8)
|
||||||
|
EventBus::SendBroadcast(Internal::ResizeEventBroadcast{});
|
||||||
for(const auto& hook : m_events_hooks[window_id][event])
|
for(const auto& hook : m_events_hooks[window_id][event])
|
||||||
{
|
{
|
||||||
if(hook.fn)
|
if(hook.fn)
|
||||||
|
|||||||
@@ -112,10 +112,13 @@ namespace mlx
|
|||||||
return set;
|
return set;
|
||||||
}
|
}
|
||||||
|
|
||||||
void DescriptorPool::ReturnDescriptorSet(std::shared_ptr<class DescriptorSet> set)
|
void DescriptorPool::ReturnDescriptorSet(std::shared_ptr<DescriptorSet> set)
|
||||||
{
|
{
|
||||||
auto it = std::find_if(m_used_sets.begin(), m_used_sets.end(), [&](std::shared_ptr<DescriptorSet> rhs_set)
|
//std::size_t i = 0;
|
||||||
|
auto it = std::find_if(m_used_sets.begin(), m_used_sets.end(), [&](const std::shared_ptr<DescriptorSet>& rhs_set)
|
||||||
{
|
{
|
||||||
|
//i++;
|
||||||
|
//std::cout << m_used_sets.size() << " " << i << std::endl;
|
||||||
return set == rhs_set;
|
return set == rhs_set;
|
||||||
});
|
});
|
||||||
if(it == m_used_sets.end())
|
if(it == m_used_sets.end())
|
||||||
|
|||||||
@@ -16,7 +16,6 @@ namespace mlx
|
|||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
std::string VulkanFormatName(VkFormat format)
|
std::string VulkanFormatName(VkFormat format)
|
||||||
{
|
{
|
||||||
#define STRINGIFY(x) case x: return #x
|
#define STRINGIFY(x) case x: return #x
|
||||||
@@ -159,7 +158,16 @@ namespace mlx
|
|||||||
void Swapchain::Init(NonOwningPtr<Window> window)
|
void Swapchain::Init(NonOwningPtr<Window> window)
|
||||||
{
|
{
|
||||||
p_window = window;
|
p_window = window;
|
||||||
|
|
||||||
|
std::function<void(const EventBase&)> functor = [this](const EventBase& event)
|
||||||
|
{
|
||||||
|
if(event.What() == Event::ResizeEventCode && !m_resize)
|
||||||
|
m_resize = true;
|
||||||
|
};
|
||||||
|
EventBus::RegisterListener({ functor, "mlx_swapchain_" + std::to_string(reinterpret_cast<std::uintptr_t>(this)) });
|
||||||
|
|
||||||
CreateSwapchain();
|
CreateSwapchain();
|
||||||
|
m_resize = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
void Swapchain::AquireFrame(VkSemaphore signal)
|
void Swapchain::AquireFrame(VkSemaphore signal)
|
||||||
@@ -170,6 +178,7 @@ namespace mlx
|
|||||||
Destroy();
|
Destroy();
|
||||||
CreateSwapchain();
|
CreateSwapchain();
|
||||||
EventBus::SendBroadcast(Internal::ResizeEventBroadcast{});
|
EventBus::SendBroadcast(Internal::ResizeEventBroadcast{});
|
||||||
|
m_resize = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
VkResult result = RenderCore::Get().vkAcquireNextImageKHR(RenderCore::Get().GetDevice(), m_swapchain, UINT64_MAX, signal, VK_NULL_HANDLE, &m_current_image_index);
|
VkResult result = RenderCore::Get().vkAcquireNextImageKHR(RenderCore::Get().GetDevice(), m_swapchain, UINT64_MAX, signal, VK_NULL_HANDLE, &m_current_image_index);
|
||||||
@@ -245,7 +254,6 @@ namespace mlx
|
|||||||
kvfSubmitSingleTimeCommandBuffer(RenderCore::Get().GetDevice(), cmd, KVF_GRAPHICS_QUEUE, fence);
|
kvfSubmitSingleTimeCommandBuffer(RenderCore::Get().GetDevice(), cmd, KVF_GRAPHICS_QUEUE, fence);
|
||||||
kvfDestroyFence(RenderCore::Get().GetDevice(), fence);
|
kvfDestroyFence(RenderCore::Get().GetDevice(), fence);
|
||||||
kvfDestroyCommandBuffer(RenderCore::Get().GetDevice(), cmd);
|
kvfDestroyCommandBuffer(RenderCore::Get().GetDevice(), cmd);
|
||||||
m_resize = false;
|
|
||||||
DebugLog("Vulkan: swapchain created with format %", VulkanFormatName(format));
|
DebugLog("Vulkan: swapchain created with format %", VulkanFormatName(format));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
10
third_party/vulkan/vulkan.cppm
vendored
10
third_party/vulkan/vulkan.cppm
vendored
@@ -8505,9 +8505,9 @@ export namespace std
|
|||||||
struct hash<VULKAN_HPP_NAMESPACE::PhysicalDevicePresentMeteringFeaturesNV>;
|
struct hash<VULKAN_HPP_NAMESPACE::PhysicalDevicePresentMeteringFeaturesNV>;
|
||||||
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
|
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
|
||||||
|
|
||||||
//===============================================
|
//=================================================================
|
||||||
//=== Required exports for vk::StructureChain ===
|
//=== Required exports for VULKAN_HPP_NAMESPACE::StructureChain ===
|
||||||
//===============================================
|
//=================================================================
|
||||||
|
|
||||||
#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
|
#if !defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
|
||||||
using std::tuple_element;
|
using std::tuple_element;
|
||||||
@@ -8516,5 +8516,5 @@ export namespace std
|
|||||||
} // namespace std
|
} // namespace std
|
||||||
|
|
||||||
// This VkFlags type is used as part of a bitfield in some structure.
|
// This VkFlags type is used as part of a bitfield in some structure.
|
||||||
// As it that can't be mimiced by vk-data types, we need to export just that!!
|
// As it can't be mimicked by vk-data types, we need to export just that!!
|
||||||
export VkGeometryInstanceFlagsKHR;
|
export using ::VkGeometryInstanceFlagsKHR;
|
||||||
18
third_party/vulkan/vulkan.hpp
vendored
18
third_party/vulkan/vulkan.hpp
vendored
@@ -63,7 +63,7 @@ extern "C" __declspec( dllimport ) FARPROC __stdcall GetProcAddress( HINSTANCE h
|
|||||||
# include <span>
|
# include <span>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
static_assert( VK_HEADER_VERSION == 309, "Wrong VK_HEADER_VERSION!" );
|
static_assert( VK_HEADER_VERSION == 310, "Wrong VK_HEADER_VERSION!" );
|
||||||
|
|
||||||
// <tuple> includes <sys/sysmacros.h> through some other header
|
// <tuple> includes <sys/sysmacros.h> through some other header
|
||||||
// this results in major(x) being resolved to gnu_dev_major(x)
|
// this results in major(x) being resolved to gnu_dev_major(x)
|
||||||
@@ -81,7 +81,7 @@ static_assert( VK_HEADER_VERSION == 309, "Wrong VK_HEADER_VERSION!" );
|
|||||||
# undef MemoryBarrier
|
# undef MemoryBarrier
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// XLib.h defines True/False, which collides with our vk::True/vk::False
|
// XLib.h defines True/False, which collides with our VULKAN_HPP_NAMESPACE::True/VULKAN_HPP_NAMESPACE::False
|
||||||
// -> undef them and provide some namepace-secure constexpr
|
// -> undef them and provide some namepace-secure constexpr
|
||||||
#if defined( True )
|
#if defined( True )
|
||||||
# undef True
|
# undef True
|
||||||
@@ -6253,7 +6253,7 @@ namespace VULKAN_HPP_NAMESPACE
|
|||||||
ObjectDestroy() = default;
|
ObjectDestroy() = default;
|
||||||
|
|
||||||
ObjectDestroy( OwnerType owner,
|
ObjectDestroy( OwnerType owner,
|
||||||
Optional<const vk::AllocationCallbacks> allocationCallbacks VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
|
Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocationCallbacks VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
|
||||||
Dispatch const & dispatch VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) VULKAN_HPP_NOEXCEPT
|
Dispatch const & dispatch VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) VULKAN_HPP_NOEXCEPT
|
||||||
: m_owner( owner )
|
: m_owner( owner )
|
||||||
, m_allocationCallbacks( allocationCallbacks )
|
, m_allocationCallbacks( allocationCallbacks )
|
||||||
@@ -6266,7 +6266,7 @@ namespace VULKAN_HPP_NAMESPACE
|
|||||||
return m_owner;
|
return m_owner;
|
||||||
}
|
}
|
||||||
|
|
||||||
Optional<const vk::AllocationCallbacks> getAllocator() const VULKAN_HPP_NOEXCEPT
|
Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> getAllocator() const VULKAN_HPP_NOEXCEPT
|
||||||
{
|
{
|
||||||
return m_allocationCallbacks;
|
return m_allocationCallbacks;
|
||||||
}
|
}
|
||||||
@@ -6286,7 +6286,7 @@ namespace VULKAN_HPP_NAMESPACE
|
|||||||
|
|
||||||
private:
|
private:
|
||||||
OwnerType m_owner = {};
|
OwnerType m_owner = {};
|
||||||
Optional<const vk::AllocationCallbacks> m_allocationCallbacks = nullptr;
|
Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> m_allocationCallbacks = nullptr;
|
||||||
Dispatch const * m_dispatch = nullptr;
|
Dispatch const * m_dispatch = nullptr;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -6298,14 +6298,14 @@ namespace VULKAN_HPP_NAMESPACE
|
|||||||
public:
|
public:
|
||||||
ObjectDestroy() = default;
|
ObjectDestroy() = default;
|
||||||
|
|
||||||
ObjectDestroy( Optional<const vk::AllocationCallbacks> allocationCallbacks,
|
ObjectDestroy( Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> allocationCallbacks,
|
||||||
Dispatch const & dispatch VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) VULKAN_HPP_NOEXCEPT
|
Dispatch const & dispatch VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) VULKAN_HPP_NOEXCEPT
|
||||||
: m_allocationCallbacks( allocationCallbacks )
|
: m_allocationCallbacks( allocationCallbacks )
|
||||||
, m_dispatch( &dispatch )
|
, m_dispatch( &dispatch )
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
Optional<const vk::AllocationCallbacks> getAllocator() const VULKAN_HPP_NOEXCEPT
|
Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> getAllocator() const VULKAN_HPP_NOEXCEPT
|
||||||
{
|
{
|
||||||
return m_allocationCallbacks;
|
return m_allocationCallbacks;
|
||||||
}
|
}
|
||||||
@@ -6324,7 +6324,7 @@ namespace VULKAN_HPP_NAMESPACE
|
|||||||
}
|
}
|
||||||
|
|
||||||
private:
|
private:
|
||||||
Optional<const vk::AllocationCallbacks> m_allocationCallbacks = nullptr;
|
Optional<const VULKAN_HPP_NAMESPACE::AllocationCallbacks> m_allocationCallbacks = nullptr;
|
||||||
Dispatch const * m_dispatch = nullptr;
|
Dispatch const * m_dispatch = nullptr;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -17712,7 +17712,7 @@ namespace VULKAN_HPP_NAMESPACE
|
|||||||
};
|
};
|
||||||
|
|
||||||
template <>
|
template <>
|
||||||
struct StructExtends<MemoryBarrierAccessFlags3KHR, MemoryBarrier2>
|
struct StructExtends<MemoryBarrierAccessFlags3KHR, SubpassDependency2>
|
||||||
{
|
{
|
||||||
enum
|
enum
|
||||||
{
|
{
|
||||||
|
|||||||
28
third_party/vulkan/vulkan_core.h
vendored
28
third_party/vulkan/vulkan_core.h
vendored
@@ -69,7 +69,7 @@ extern "C" {
|
|||||||
#define VK_API_VERSION_1_0 VK_MAKE_API_VERSION(0, 1, 0, 0)// Patch version should always be set to 0
|
#define VK_API_VERSION_1_0 VK_MAKE_API_VERSION(0, 1, 0, 0)// Patch version should always be set to 0
|
||||||
|
|
||||||
// Version of this file
|
// Version of this file
|
||||||
#define VK_HEADER_VERSION 309
|
#define VK_HEADER_VERSION 310
|
||||||
|
|
||||||
// Complete version of this file
|
// Complete version of this file
|
||||||
#define VK_HEADER_VERSION_COMPLETE VK_MAKE_API_VERSION(0, 1, 4, VK_HEADER_VERSION)
|
#define VK_HEADER_VERSION_COMPLETE VK_MAKE_API_VERSION(0, 1, 4, VK_HEADER_VERSION)
|
||||||
@@ -862,11 +862,21 @@ typedef enum VkStructureType {
|
|||||||
VK_STRUCTURE_TYPE_VIDEO_ENCODE_SESSION_PARAMETERS_FEEDBACK_INFO_KHR = 1000299010,
|
VK_STRUCTURE_TYPE_VIDEO_ENCODE_SESSION_PARAMETERS_FEEDBACK_INFO_KHR = 1000299010,
|
||||||
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV = 1000300000,
|
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV = 1000300000,
|
||||||
VK_STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV = 1000300001,
|
VK_STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV = 1000300001,
|
||||||
|
#ifdef VK_ENABLE_BETA_EXTENSIONS
|
||||||
VK_STRUCTURE_TYPE_CUDA_MODULE_CREATE_INFO_NV = 1000307000,
|
VK_STRUCTURE_TYPE_CUDA_MODULE_CREATE_INFO_NV = 1000307000,
|
||||||
|
#endif
|
||||||
|
#ifdef VK_ENABLE_BETA_EXTENSIONS
|
||||||
VK_STRUCTURE_TYPE_CUDA_FUNCTION_CREATE_INFO_NV = 1000307001,
|
VK_STRUCTURE_TYPE_CUDA_FUNCTION_CREATE_INFO_NV = 1000307001,
|
||||||
|
#endif
|
||||||
|
#ifdef VK_ENABLE_BETA_EXTENSIONS
|
||||||
VK_STRUCTURE_TYPE_CUDA_LAUNCH_INFO_NV = 1000307002,
|
VK_STRUCTURE_TYPE_CUDA_LAUNCH_INFO_NV = 1000307002,
|
||||||
|
#endif
|
||||||
|
#ifdef VK_ENABLE_BETA_EXTENSIONS
|
||||||
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUDA_KERNEL_LAUNCH_FEATURES_NV = 1000307003,
|
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUDA_KERNEL_LAUNCH_FEATURES_NV = 1000307003,
|
||||||
|
#endif
|
||||||
|
#ifdef VK_ENABLE_BETA_EXTENSIONS
|
||||||
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUDA_KERNEL_LAUNCH_PROPERTIES_NV = 1000307004,
|
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUDA_KERNEL_LAUNCH_PROPERTIES_NV = 1000307004,
|
||||||
|
#endif
|
||||||
VK_STRUCTURE_TYPE_QUERY_LOW_LATENCY_SUPPORT_NV = 1000310000,
|
VK_STRUCTURE_TYPE_QUERY_LOW_LATENCY_SUPPORT_NV = 1000310000,
|
||||||
VK_STRUCTURE_TYPE_EXPORT_METAL_OBJECT_CREATE_INFO_EXT = 1000311000,
|
VK_STRUCTURE_TYPE_EXPORT_METAL_OBJECT_CREATE_INFO_EXT = 1000311000,
|
||||||
VK_STRUCTURE_TYPE_EXPORT_METAL_OBJECTS_INFO_EXT = 1000311001,
|
VK_STRUCTURE_TYPE_EXPORT_METAL_OBJECTS_INFO_EXT = 1000311001,
|
||||||
@@ -1567,8 +1577,12 @@ typedef enum VkObjectType {
|
|||||||
VK_OBJECT_TYPE_PERFORMANCE_CONFIGURATION_INTEL = 1000210000,
|
VK_OBJECT_TYPE_PERFORMANCE_CONFIGURATION_INTEL = 1000210000,
|
||||||
VK_OBJECT_TYPE_DEFERRED_OPERATION_KHR = 1000268000,
|
VK_OBJECT_TYPE_DEFERRED_OPERATION_KHR = 1000268000,
|
||||||
VK_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NV = 1000277000,
|
VK_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NV = 1000277000,
|
||||||
|
#ifdef VK_ENABLE_BETA_EXTENSIONS
|
||||||
VK_OBJECT_TYPE_CUDA_MODULE_NV = 1000307000,
|
VK_OBJECT_TYPE_CUDA_MODULE_NV = 1000307000,
|
||||||
|
#endif
|
||||||
|
#ifdef VK_ENABLE_BETA_EXTENSIONS
|
||||||
VK_OBJECT_TYPE_CUDA_FUNCTION_NV = 1000307001,
|
VK_OBJECT_TYPE_CUDA_FUNCTION_NV = 1000307001,
|
||||||
|
#endif
|
||||||
VK_OBJECT_TYPE_BUFFER_COLLECTION_FUCHSIA = 1000366000,
|
VK_OBJECT_TYPE_BUFFER_COLLECTION_FUCHSIA = 1000366000,
|
||||||
VK_OBJECT_TYPE_MICROMAP_EXT = 1000396000,
|
VK_OBJECT_TYPE_MICROMAP_EXT = 1000396000,
|
||||||
VK_OBJECT_TYPE_OPTICAL_FLOW_SESSION_NV = 1000464000,
|
VK_OBJECT_TYPE_OPTICAL_FLOW_SESSION_NV = 1000464000,
|
||||||
@@ -2389,14 +2403,14 @@ typedef enum VkAccessFlagBits {
|
|||||||
VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_KHR = 0x00400000,
|
VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_KHR = 0x00400000,
|
||||||
VK_ACCESS_FRAGMENT_DENSITY_MAP_READ_BIT_EXT = 0x01000000,
|
VK_ACCESS_FRAGMENT_DENSITY_MAP_READ_BIT_EXT = 0x01000000,
|
||||||
VK_ACCESS_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR = 0x00800000,
|
VK_ACCESS_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR = 0x00800000,
|
||||||
VK_ACCESS_COMMAND_PREPROCESS_READ_BIT_NV = 0x00020000,
|
VK_ACCESS_COMMAND_PREPROCESS_READ_BIT_EXT = 0x00020000,
|
||||||
VK_ACCESS_COMMAND_PREPROCESS_WRITE_BIT_NV = 0x00040000,
|
VK_ACCESS_COMMAND_PREPROCESS_WRITE_BIT_EXT = 0x00040000,
|
||||||
VK_ACCESS_SHADING_RATE_IMAGE_READ_BIT_NV = VK_ACCESS_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR,
|
VK_ACCESS_SHADING_RATE_IMAGE_READ_BIT_NV = VK_ACCESS_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR,
|
||||||
VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_NV = VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_KHR,
|
VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_NV = VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_KHR,
|
||||||
VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_NV = VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_KHR,
|
VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_NV = VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_KHR,
|
||||||
|
VK_ACCESS_COMMAND_PREPROCESS_READ_BIT_NV = VK_ACCESS_COMMAND_PREPROCESS_READ_BIT_EXT,
|
||||||
|
VK_ACCESS_COMMAND_PREPROCESS_WRITE_BIT_NV = VK_ACCESS_COMMAND_PREPROCESS_WRITE_BIT_EXT,
|
||||||
VK_ACCESS_NONE_KHR = VK_ACCESS_NONE,
|
VK_ACCESS_NONE_KHR = VK_ACCESS_NONE,
|
||||||
VK_ACCESS_COMMAND_PREPROCESS_READ_BIT_EXT = VK_ACCESS_COMMAND_PREPROCESS_READ_BIT_NV,
|
|
||||||
VK_ACCESS_COMMAND_PREPROCESS_WRITE_BIT_EXT = VK_ACCESS_COMMAND_PREPROCESS_WRITE_BIT_NV,
|
|
||||||
VK_ACCESS_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
|
VK_ACCESS_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
|
||||||
} VkAccessFlagBits;
|
} VkAccessFlagBits;
|
||||||
typedef VkFlags VkAccessFlags;
|
typedef VkFlags VkAccessFlags;
|
||||||
@@ -2615,16 +2629,16 @@ typedef enum VkPipelineStageFlagBits {
|
|||||||
VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_KHR = 0x00200000,
|
VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_KHR = 0x00200000,
|
||||||
VK_PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT = 0x00800000,
|
VK_PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT = 0x00800000,
|
||||||
VK_PIPELINE_STAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR = 0x00400000,
|
VK_PIPELINE_STAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR = 0x00400000,
|
||||||
VK_PIPELINE_STAGE_COMMAND_PREPROCESS_BIT_NV = 0x00020000,
|
|
||||||
VK_PIPELINE_STAGE_TASK_SHADER_BIT_EXT = 0x00080000,
|
VK_PIPELINE_STAGE_TASK_SHADER_BIT_EXT = 0x00080000,
|
||||||
VK_PIPELINE_STAGE_MESH_SHADER_BIT_EXT = 0x00100000,
|
VK_PIPELINE_STAGE_MESH_SHADER_BIT_EXT = 0x00100000,
|
||||||
|
VK_PIPELINE_STAGE_COMMAND_PREPROCESS_BIT_EXT = 0x00020000,
|
||||||
VK_PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV = VK_PIPELINE_STAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR,
|
VK_PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV = VK_PIPELINE_STAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR,
|
||||||
VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_NV = VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_KHR,
|
VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_NV = VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_KHR,
|
||||||
VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_NV = VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_KHR,
|
VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_NV = VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_KHR,
|
||||||
VK_PIPELINE_STAGE_TASK_SHADER_BIT_NV = VK_PIPELINE_STAGE_TASK_SHADER_BIT_EXT,
|
VK_PIPELINE_STAGE_TASK_SHADER_BIT_NV = VK_PIPELINE_STAGE_TASK_SHADER_BIT_EXT,
|
||||||
VK_PIPELINE_STAGE_MESH_SHADER_BIT_NV = VK_PIPELINE_STAGE_MESH_SHADER_BIT_EXT,
|
VK_PIPELINE_STAGE_MESH_SHADER_BIT_NV = VK_PIPELINE_STAGE_MESH_SHADER_BIT_EXT,
|
||||||
|
VK_PIPELINE_STAGE_COMMAND_PREPROCESS_BIT_NV = VK_PIPELINE_STAGE_COMMAND_PREPROCESS_BIT_EXT,
|
||||||
VK_PIPELINE_STAGE_NONE_KHR = VK_PIPELINE_STAGE_NONE,
|
VK_PIPELINE_STAGE_NONE_KHR = VK_PIPELINE_STAGE_NONE,
|
||||||
VK_PIPELINE_STAGE_COMMAND_PREPROCESS_BIT_EXT = VK_PIPELINE_STAGE_COMMAND_PREPROCESS_BIT_NV,
|
|
||||||
VK_PIPELINE_STAGE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
|
VK_PIPELINE_STAGE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
|
||||||
} VkPipelineStageFlagBits;
|
} VkPipelineStageFlagBits;
|
||||||
typedef VkFlags VkPipelineStageFlags;
|
typedef VkFlags VkPipelineStageFlags;
|
||||||
|
|||||||
30
third_party/vulkan/vulkan_enums.hpp
vendored
30
third_party/vulkan/vulkan_enums.hpp
vendored
@@ -2370,12 +2370,12 @@ namespace VULKAN_HPP_NAMESPACE
|
|||||||
eFragmentDensityProcessEXT = VK_PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT,
|
eFragmentDensityProcessEXT = VK_PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT,
|
||||||
eFragmentShadingRateAttachmentKHR = VK_PIPELINE_STAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR,
|
eFragmentShadingRateAttachmentKHR = VK_PIPELINE_STAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR,
|
||||||
eShadingRateImageNV = VK_PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV,
|
eShadingRateImageNV = VK_PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV,
|
||||||
eCommandPreprocessNV = VK_PIPELINE_STAGE_COMMAND_PREPROCESS_BIT_NV,
|
|
||||||
eCommandPreprocessEXT = VK_PIPELINE_STAGE_COMMAND_PREPROCESS_BIT_EXT,
|
|
||||||
eTaskShaderEXT = VK_PIPELINE_STAGE_TASK_SHADER_BIT_EXT,
|
eTaskShaderEXT = VK_PIPELINE_STAGE_TASK_SHADER_BIT_EXT,
|
||||||
eTaskShaderNV = VK_PIPELINE_STAGE_TASK_SHADER_BIT_NV,
|
eTaskShaderNV = VK_PIPELINE_STAGE_TASK_SHADER_BIT_NV,
|
||||||
eMeshShaderEXT = VK_PIPELINE_STAGE_MESH_SHADER_BIT_EXT,
|
eMeshShaderEXT = VK_PIPELINE_STAGE_MESH_SHADER_BIT_EXT,
|
||||||
eMeshShaderNV = VK_PIPELINE_STAGE_MESH_SHADER_BIT_NV
|
eMeshShaderNV = VK_PIPELINE_STAGE_MESH_SHADER_BIT_NV,
|
||||||
|
eCommandPreprocessEXT = VK_PIPELINE_STAGE_COMMAND_PREPROCESS_BIT_EXT,
|
||||||
|
eCommandPreprocessNV = VK_PIPELINE_STAGE_COMMAND_PREPROCESS_BIT_NV
|
||||||
};
|
};
|
||||||
|
|
||||||
// wrapper using for bitmask VkPipelineStageFlags, see https://registry.khronos.org/vulkan/specs/latest/man/html/VkPipelineStageFlags.html
|
// wrapper using for bitmask VkPipelineStageFlags, see https://registry.khronos.org/vulkan/specs/latest/man/html/VkPipelineStageFlags.html
|
||||||
@@ -2393,8 +2393,8 @@ namespace VULKAN_HPP_NAMESPACE
|
|||||||
PipelineStageFlagBits::eBottomOfPipe | PipelineStageFlagBits::eHost | PipelineStageFlagBits::eAllGraphics | PipelineStageFlagBits::eAllCommands |
|
PipelineStageFlagBits::eBottomOfPipe | PipelineStageFlagBits::eHost | PipelineStageFlagBits::eAllGraphics | PipelineStageFlagBits::eAllCommands |
|
||||||
PipelineStageFlagBits::eNone | PipelineStageFlagBits::eTransformFeedbackEXT | PipelineStageFlagBits::eConditionalRenderingEXT |
|
PipelineStageFlagBits::eNone | PipelineStageFlagBits::eTransformFeedbackEXT | PipelineStageFlagBits::eConditionalRenderingEXT |
|
||||||
PipelineStageFlagBits::eAccelerationStructureBuildKHR | PipelineStageFlagBits::eRayTracingShaderKHR | PipelineStageFlagBits::eFragmentDensityProcessEXT |
|
PipelineStageFlagBits::eAccelerationStructureBuildKHR | PipelineStageFlagBits::eRayTracingShaderKHR | PipelineStageFlagBits::eFragmentDensityProcessEXT |
|
||||||
PipelineStageFlagBits::eFragmentShadingRateAttachmentKHR | PipelineStageFlagBits::eCommandPreprocessNV | PipelineStageFlagBits::eTaskShaderEXT |
|
PipelineStageFlagBits::eFragmentShadingRateAttachmentKHR | PipelineStageFlagBits::eTaskShaderEXT | PipelineStageFlagBits::eMeshShaderEXT |
|
||||||
PipelineStageFlagBits::eMeshShaderEXT;
|
PipelineStageFlagBits::eCommandPreprocessEXT;
|
||||||
};
|
};
|
||||||
|
|
||||||
// wrapper class for enum VkMemoryMapFlagBits, see https://registry.khronos.org/vulkan/specs/latest/man/html/VkMemoryMapFlagBits.html
|
// wrapper class for enum VkMemoryMapFlagBits, see https://registry.khronos.org/vulkan/specs/latest/man/html/VkMemoryMapFlagBits.html
|
||||||
@@ -3668,10 +3668,10 @@ namespace VULKAN_HPP_NAMESPACE
|
|||||||
eFragmentDensityMapReadEXT = VK_ACCESS_FRAGMENT_DENSITY_MAP_READ_BIT_EXT,
|
eFragmentDensityMapReadEXT = VK_ACCESS_FRAGMENT_DENSITY_MAP_READ_BIT_EXT,
|
||||||
eFragmentShadingRateAttachmentReadKHR = VK_ACCESS_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR,
|
eFragmentShadingRateAttachmentReadKHR = VK_ACCESS_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR,
|
||||||
eShadingRateImageReadNV = VK_ACCESS_SHADING_RATE_IMAGE_READ_BIT_NV,
|
eShadingRateImageReadNV = VK_ACCESS_SHADING_RATE_IMAGE_READ_BIT_NV,
|
||||||
eCommandPreprocessReadNV = VK_ACCESS_COMMAND_PREPROCESS_READ_BIT_NV,
|
|
||||||
eCommandPreprocessReadEXT = VK_ACCESS_COMMAND_PREPROCESS_READ_BIT_EXT,
|
eCommandPreprocessReadEXT = VK_ACCESS_COMMAND_PREPROCESS_READ_BIT_EXT,
|
||||||
eCommandPreprocessWriteNV = VK_ACCESS_COMMAND_PREPROCESS_WRITE_BIT_NV,
|
eCommandPreprocessReadNV = VK_ACCESS_COMMAND_PREPROCESS_READ_BIT_NV,
|
||||||
eCommandPreprocessWriteEXT = VK_ACCESS_COMMAND_PREPROCESS_WRITE_BIT_EXT
|
eCommandPreprocessWriteEXT = VK_ACCESS_COMMAND_PREPROCESS_WRITE_BIT_EXT,
|
||||||
|
eCommandPreprocessWriteNV = VK_ACCESS_COMMAND_PREPROCESS_WRITE_BIT_NV
|
||||||
};
|
};
|
||||||
|
|
||||||
// wrapper using for bitmask VkAccessFlags, see https://registry.khronos.org/vulkan/specs/latest/man/html/VkAccessFlags.html
|
// wrapper using for bitmask VkAccessFlags, see https://registry.khronos.org/vulkan/specs/latest/man/html/VkAccessFlags.html
|
||||||
@@ -3689,7 +3689,7 @@ namespace VULKAN_HPP_NAMESPACE
|
|||||||
AccessFlagBits::eMemoryWrite | AccessFlagBits::eNone | AccessFlagBits::eTransformFeedbackWriteEXT | AccessFlagBits::eTransformFeedbackCounterReadEXT |
|
AccessFlagBits::eMemoryWrite | AccessFlagBits::eNone | AccessFlagBits::eTransformFeedbackWriteEXT | AccessFlagBits::eTransformFeedbackCounterReadEXT |
|
||||||
AccessFlagBits::eTransformFeedbackCounterWriteEXT | AccessFlagBits::eConditionalRenderingReadEXT | AccessFlagBits::eColorAttachmentReadNoncoherentEXT |
|
AccessFlagBits::eTransformFeedbackCounterWriteEXT | AccessFlagBits::eConditionalRenderingReadEXT | AccessFlagBits::eColorAttachmentReadNoncoherentEXT |
|
||||||
AccessFlagBits::eAccelerationStructureReadKHR | AccessFlagBits::eAccelerationStructureWriteKHR | AccessFlagBits::eFragmentDensityMapReadEXT |
|
AccessFlagBits::eAccelerationStructureReadKHR | AccessFlagBits::eAccelerationStructureWriteKHR | AccessFlagBits::eFragmentDensityMapReadEXT |
|
||||||
AccessFlagBits::eFragmentShadingRateAttachmentReadKHR | AccessFlagBits::eCommandPreprocessReadNV | AccessFlagBits::eCommandPreprocessWriteNV;
|
AccessFlagBits::eFragmentShadingRateAttachmentReadKHR | AccessFlagBits::eCommandPreprocessReadEXT | AccessFlagBits::eCommandPreprocessWriteEXT;
|
||||||
};
|
};
|
||||||
|
|
||||||
// wrapper class for enum VkAttachmentDescriptionFlagBits, see https://registry.khronos.org/vulkan/specs/latest/man/html/VkAttachmentDescriptionFlagBits.html
|
// wrapper class for enum VkAttachmentDescriptionFlagBits, see https://registry.khronos.org/vulkan/specs/latest/man/html/VkAttachmentDescriptionFlagBits.html
|
||||||
@@ -4651,8 +4651,8 @@ namespace VULKAN_HPP_NAMESPACE
|
|||||||
eVideoEncodeKHR = VK_PIPELINE_STAGE_2_VIDEO_ENCODE_BIT_KHR,
|
eVideoEncodeKHR = VK_PIPELINE_STAGE_2_VIDEO_ENCODE_BIT_KHR,
|
||||||
eTransformFeedbackEXT = VK_PIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT,
|
eTransformFeedbackEXT = VK_PIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT,
|
||||||
eConditionalRenderingEXT = VK_PIPELINE_STAGE_2_CONDITIONAL_RENDERING_BIT_EXT,
|
eConditionalRenderingEXT = VK_PIPELINE_STAGE_2_CONDITIONAL_RENDERING_BIT_EXT,
|
||||||
eCommandPreprocessNV = VK_PIPELINE_STAGE_2_COMMAND_PREPROCESS_BIT_NV,
|
|
||||||
eCommandPreprocessEXT = VK_PIPELINE_STAGE_2_COMMAND_PREPROCESS_BIT_EXT,
|
eCommandPreprocessEXT = VK_PIPELINE_STAGE_2_COMMAND_PREPROCESS_BIT_EXT,
|
||||||
|
eCommandPreprocessNV = VK_PIPELINE_STAGE_2_COMMAND_PREPROCESS_BIT_NV,
|
||||||
eFragmentShadingRateAttachmentKHR = VK_PIPELINE_STAGE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR,
|
eFragmentShadingRateAttachmentKHR = VK_PIPELINE_STAGE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR,
|
||||||
eShadingRateImageNV = VK_PIPELINE_STAGE_2_SHADING_RATE_IMAGE_BIT_NV,
|
eShadingRateImageNV = VK_PIPELINE_STAGE_2_SHADING_RATE_IMAGE_BIT_NV,
|
||||||
eAccelerationStructureBuildKHR = VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHR,
|
eAccelerationStructureBuildKHR = VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHR,
|
||||||
@@ -4693,7 +4693,7 @@ namespace VULKAN_HPP_NAMESPACE
|
|||||||
PipelineStageFlagBits2::eAllCommands | PipelineStageFlagBits2::eCopy | PipelineStageFlagBits2::eResolve | PipelineStageFlagBits2::eBlit |
|
PipelineStageFlagBits2::eAllCommands | PipelineStageFlagBits2::eCopy | PipelineStageFlagBits2::eResolve | PipelineStageFlagBits2::eBlit |
|
||||||
PipelineStageFlagBits2::eClear | PipelineStageFlagBits2::eIndexInput | PipelineStageFlagBits2::eVertexAttributeInput |
|
PipelineStageFlagBits2::eClear | PipelineStageFlagBits2::eIndexInput | PipelineStageFlagBits2::eVertexAttributeInput |
|
||||||
PipelineStageFlagBits2::ePreRasterizationShaders | PipelineStageFlagBits2::eVideoDecodeKHR | PipelineStageFlagBits2::eVideoEncodeKHR |
|
PipelineStageFlagBits2::ePreRasterizationShaders | PipelineStageFlagBits2::eVideoDecodeKHR | PipelineStageFlagBits2::eVideoEncodeKHR |
|
||||||
PipelineStageFlagBits2::eTransformFeedbackEXT | PipelineStageFlagBits2::eConditionalRenderingEXT | PipelineStageFlagBits2::eCommandPreprocessNV |
|
PipelineStageFlagBits2::eTransformFeedbackEXT | PipelineStageFlagBits2::eConditionalRenderingEXT | PipelineStageFlagBits2::eCommandPreprocessEXT |
|
||||||
PipelineStageFlagBits2::eFragmentShadingRateAttachmentKHR | PipelineStageFlagBits2::eAccelerationStructureBuildKHR |
|
PipelineStageFlagBits2::eFragmentShadingRateAttachmentKHR | PipelineStageFlagBits2::eAccelerationStructureBuildKHR |
|
||||||
PipelineStageFlagBits2::eRayTracingShaderKHR | PipelineStageFlagBits2::eFragmentDensityProcessEXT | PipelineStageFlagBits2::eTaskShaderEXT |
|
PipelineStageFlagBits2::eRayTracingShaderKHR | PipelineStageFlagBits2::eFragmentDensityProcessEXT | PipelineStageFlagBits2::eTaskShaderEXT |
|
||||||
PipelineStageFlagBits2::eMeshShaderEXT | PipelineStageFlagBits2::eSubpassShaderHUAWEI | PipelineStageFlagBits2::eInvocationMaskHUAWEI |
|
PipelineStageFlagBits2::eMeshShaderEXT | PipelineStageFlagBits2::eSubpassShaderHUAWEI | PipelineStageFlagBits2::eInvocationMaskHUAWEI |
|
||||||
@@ -4733,10 +4733,10 @@ namespace VULKAN_HPP_NAMESPACE
|
|||||||
eTransformFeedbackCounterReadEXT = VK_ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT,
|
eTransformFeedbackCounterReadEXT = VK_ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT,
|
||||||
eTransformFeedbackCounterWriteEXT = VK_ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT,
|
eTransformFeedbackCounterWriteEXT = VK_ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT,
|
||||||
eConditionalRenderingReadEXT = VK_ACCESS_2_CONDITIONAL_RENDERING_READ_BIT_EXT,
|
eConditionalRenderingReadEXT = VK_ACCESS_2_CONDITIONAL_RENDERING_READ_BIT_EXT,
|
||||||
eCommandPreprocessReadNV = VK_ACCESS_2_COMMAND_PREPROCESS_READ_BIT_NV,
|
|
||||||
eCommandPreprocessReadEXT = VK_ACCESS_2_COMMAND_PREPROCESS_READ_BIT_EXT,
|
eCommandPreprocessReadEXT = VK_ACCESS_2_COMMAND_PREPROCESS_READ_BIT_EXT,
|
||||||
eCommandPreprocessWriteNV = VK_ACCESS_2_COMMAND_PREPROCESS_WRITE_BIT_NV,
|
eCommandPreprocessReadNV = VK_ACCESS_2_COMMAND_PREPROCESS_READ_BIT_NV,
|
||||||
eCommandPreprocessWriteEXT = VK_ACCESS_2_COMMAND_PREPROCESS_WRITE_BIT_EXT,
|
eCommandPreprocessWriteEXT = VK_ACCESS_2_COMMAND_PREPROCESS_WRITE_BIT_EXT,
|
||||||
|
eCommandPreprocessWriteNV = VK_ACCESS_2_COMMAND_PREPROCESS_WRITE_BIT_NV,
|
||||||
eFragmentShadingRateAttachmentReadKHR = VK_ACCESS_2_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR,
|
eFragmentShadingRateAttachmentReadKHR = VK_ACCESS_2_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR,
|
||||||
eShadingRateImageReadNV = VK_ACCESS_2_SHADING_RATE_IMAGE_READ_BIT_NV,
|
eShadingRateImageReadNV = VK_ACCESS_2_SHADING_RATE_IMAGE_READ_BIT_NV,
|
||||||
eAccelerationStructureReadKHR = VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR,
|
eAccelerationStructureReadKHR = VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR,
|
||||||
@@ -4773,7 +4773,7 @@ namespace VULKAN_HPP_NAMESPACE
|
|||||||
AccessFlagBits2::eShaderStorageRead | AccessFlagBits2::eShaderStorageWrite | AccessFlagBits2::eVideoDecodeReadKHR |
|
AccessFlagBits2::eShaderStorageRead | AccessFlagBits2::eShaderStorageWrite | AccessFlagBits2::eVideoDecodeReadKHR |
|
||||||
AccessFlagBits2::eVideoDecodeWriteKHR | AccessFlagBits2::eVideoEncodeReadKHR | AccessFlagBits2::eVideoEncodeWriteKHR |
|
AccessFlagBits2::eVideoDecodeWriteKHR | AccessFlagBits2::eVideoEncodeReadKHR | AccessFlagBits2::eVideoEncodeWriteKHR |
|
||||||
AccessFlagBits2::eTransformFeedbackWriteEXT | AccessFlagBits2::eTransformFeedbackCounterReadEXT | AccessFlagBits2::eTransformFeedbackCounterWriteEXT |
|
AccessFlagBits2::eTransformFeedbackWriteEXT | AccessFlagBits2::eTransformFeedbackCounterReadEXT | AccessFlagBits2::eTransformFeedbackCounterWriteEXT |
|
||||||
AccessFlagBits2::eConditionalRenderingReadEXT | AccessFlagBits2::eCommandPreprocessReadNV | AccessFlagBits2::eCommandPreprocessWriteNV |
|
AccessFlagBits2::eConditionalRenderingReadEXT | AccessFlagBits2::eCommandPreprocessReadEXT | AccessFlagBits2::eCommandPreprocessWriteEXT |
|
||||||
AccessFlagBits2::eFragmentShadingRateAttachmentReadKHR | AccessFlagBits2::eAccelerationStructureReadKHR |
|
AccessFlagBits2::eFragmentShadingRateAttachmentReadKHR | AccessFlagBits2::eAccelerationStructureReadKHR |
|
||||||
AccessFlagBits2::eAccelerationStructureWriteKHR | AccessFlagBits2::eFragmentDensityMapReadEXT | AccessFlagBits2::eColorAttachmentReadNoncoherentEXT |
|
AccessFlagBits2::eAccelerationStructureWriteKHR | AccessFlagBits2::eFragmentDensityMapReadEXT | AccessFlagBits2::eColorAttachmentReadNoncoherentEXT |
|
||||||
AccessFlagBits2::eDescriptorBufferReadEXT | AccessFlagBits2::eInvocationMaskReadHUAWEI | AccessFlagBits2::eShaderBindingTableReadKHR |
|
AccessFlagBits2::eDescriptorBufferReadEXT | AccessFlagBits2::eInvocationMaskReadHUAWEI | AccessFlagBits2::eShaderBindingTableReadKHR |
|
||||||
@@ -8182,7 +8182,7 @@ namespace VULKAN_HPP_NAMESPACE
|
|||||||
template <>
|
template <>
|
||||||
struct CppType<LayerSettingTypeEXT, LayerSettingTypeEXT::eBool32>
|
struct CppType<LayerSettingTypeEXT, LayerSettingTypeEXT::eBool32>
|
||||||
{
|
{
|
||||||
using Type = vk::Bool32;
|
using Type = VULKAN_HPP_NAMESPACE::Bool32;
|
||||||
};
|
};
|
||||||
|
|
||||||
template <>
|
template <>
|
||||||
|
|||||||
1963
third_party/vulkan/vulkan_extension_inspection.hpp
vendored
1963
third_party/vulkan/vulkan_extension_inspection.hpp
vendored
File diff suppressed because it is too large
Load Diff
2
third_party/vulkan/vulkan_handles.hpp
vendored
2
third_party/vulkan/vulkan_handles.hpp
vendored
@@ -20426,7 +20426,7 @@ namespace VULKAN_HPP_NAMESPACE
|
|||||||
VULKAN_HPP_NODISCARD typename ResultValueType<uint32_t>::type enumerateInstanceVersion( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT );
|
VULKAN_HPP_NODISCARD typename ResultValueType<uint32_t>::type enumerateInstanceVersion( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT );
|
||||||
#endif /* VULKAN_HPP_DISABLE_ENHANCED_MODE */
|
#endif /* VULKAN_HPP_DISABLE_ENHANCED_MODE */
|
||||||
|
|
||||||
// operators to compare vk::-handles
|
// operators to compare VULKAN_HPP_NAMESPACE::-handles
|
||||||
#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
|
#if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
|
||||||
template <typename T, typename std::enable_if<VULKAN_HPP_NAMESPACE::isVulkanHandleType<T>::value, int>::type = 0>
|
template <typename T, typename std::enable_if<VULKAN_HPP_NAMESPACE::isVulkanHandleType<T>::value, int>::type = 0>
|
||||||
auto operator<=>( T const & lhs, T const & rhs )
|
auto operator<=>( T const & lhs, T const & rhs )
|
||||||
|
|||||||
2
third_party/vulkan/vulkan_raii.hpp
vendored
2
third_party/vulkan/vulkan_raii.hpp
vendored
@@ -14252,7 +14252,7 @@ namespace VULKAN_HPP_NAMESPACE
|
|||||||
static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
|
static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
// operators to compare vk::raii-handles
|
// operators to compare VULKAN_HPP_NAMESPACE::raii-handles
|
||||||
# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
|
# if defined( VULKAN_HPP_HAS_SPACESHIP_OPERATOR )
|
||||||
template <typename T, typename std::enable_if<VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::isVulkanRAIIHandleType<T>::value, bool>::type = 0>
|
template <typename T, typename std::enable_if<VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE::isVulkanRAIIHandleType<T>::value, bool>::type = 0>
|
||||||
auto operator<=>( T const & a, T const & b ) VULKAN_HPP_NOEXCEPT
|
auto operator<=>( T const & a, T const & b ) VULKAN_HPP_NOEXCEPT
|
||||||
|
|||||||
11812
third_party/vulkan/vulkan_structs.hpp
vendored
11812
third_party/vulkan/vulkan_structs.hpp
vendored
File diff suppressed because it is too large
Load Diff
3474
third_party/vulkan/vulkan_to_string.hpp
vendored
3474
third_party/vulkan/vulkan_to_string.hpp
vendored
File diff suppressed because it is too large
Load Diff
880
third_party/vulkan/vulkan_video.hpp
vendored
880
third_party/vulkan/vulkan_video.hpp
vendored
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user