mirror of
https://github.com/slendidev/lunar.git
synced 2026-01-30 16:28:58 +02:00
10
src/Util.h
10
src/Util.h
@@ -1,16 +1,14 @@
|
||||
#pragma once
|
||||
|
||||
#include <string_view>
|
||||
#include <span>
|
||||
|
||||
#include <vulkan/vk_enum_string_helper.h>
|
||||
#include <vulkan/vulkan.h>
|
||||
|
||||
using namespace std::string_view_literals;
|
||||
|
||||
template<typename F> struct privDefer {
|
||||
F f;
|
||||
privDefer(F f)
|
||||
: f(f)
|
||||
privDefer(F f_)
|
||||
: f(f_)
|
||||
{
|
||||
}
|
||||
~privDefer() { f(); }
|
||||
@@ -44,6 +42,8 @@ auto transition_image(VkCommandBuffer cmd, VkImage image,
|
||||
VkImageLayout current_layout, VkImageLayout new_layout) -> void;
|
||||
auto copy_image_to_image(VkCommandBuffer cmd, VkImage source,
|
||||
VkImage destination, VkExtent2D src_size, VkExtent2D dst_size) -> void;
|
||||
auto load_shader_module(std::span<uint8_t> spirv_data, VkDevice device,
|
||||
VkShaderModule *out_shader_module) -> bool;
|
||||
|
||||
} // namespace vkutil
|
||||
|
||||
|
||||
Reference in New Issue
Block a user