From 9a13df9ac94d406ccd7e28d6d773bf970c133fd1 Mon Sep 17 00:00:00 2001
From: Lava Block <the@lava-block.com>
Date: Sat, 22 May 2021 12:57:52 +0200
Subject: [PATCH] VkFormat_optional

---
 liblava/resource/format.cpp | 4 ++--
 liblava/resource/format.hpp | 6 ++++--
 2 files changed, 6 insertions(+), 4 deletions(-)

diff --git a/liblava/resource/format.cpp b/liblava/resource/format.cpp
index e18d8d88..37d936d9 100644
--- a/liblava/resource/format.cpp
+++ b/liblava/resource/format.cpp
@@ -362,7 +362,7 @@ lava::ui32 lava::format_block_size(VkFormat format) {
 #undef fmt
 }
 
-std::optional<VkFormat> lava::get_supported_depth_format(VkPhysicalDevice physical_device) {
+lava::VkFormat_optional lava::get_supported_depth_format(VkPhysicalDevice physical_device) {
     static const VkFormat depth_formats[] = { VK_FORMAT_D32_SFLOAT_S8_UINT, VK_FORMAT_D32_SFLOAT, VK_FORMAT_D24_UNORM_S8_UINT, VK_FORMAT_D16_UNORM_S8_UINT, VK_FORMAT_D16_UNORM };
 
     for (auto& format : depth_formats) {
@@ -377,7 +377,7 @@ std::optional<VkFormat> lava::get_supported_depth_format(VkPhysicalDevice physic
     return std::nullopt;
 }
 
-std::optional<VkFormat> lava::get_supported_format(VkPhysicalDevice physical_device, lava::VkFormats const& possible_formats, VkImageUsageFlags usage) {
+lava::VkFormat_optional lava::get_supported_format(VkPhysicalDevice physical_device, lava::VkFormats const& possible_formats, VkImageUsageFlags usage) {
     VkFormatFeatureFlags features = 0;
     if (usage & VK_IMAGE_USAGE_TRANSFER_SRC_BIT)
         features |= VK_FORMAT_FEATURE_TRANSFER_SRC_BIT;
diff --git a/liblava/resource/format.hpp b/liblava/resource/format.hpp
index 7178cdcc..6024ab36 100644
--- a/liblava/resource/format.hpp
+++ b/liblava/resource/format.hpp
@@ -9,6 +9,8 @@
 
 namespace lava {
 
+    using VkFormat_optional = std::optional<VkFormat>;
+
     bool format_depth(VkFormat format);
 
     bool format_stencil(VkFormat format);
@@ -27,9 +29,9 @@ namespace lava {
 
     ui32 format_block_size(VkFormat format);
 
-    std::optional<VkFormat> get_supported_depth_format(VkPhysicalDevice physical_device);
+    VkFormat_optional get_supported_depth_format(VkPhysicalDevice physical_device);
 
-    std::optional<VkFormat> get_supported_format(VkPhysicalDevice physical_device, VkFormats const& possible_formats, VkImageUsageFlags usage);
+    VkFormat_optional get_supported_format(VkPhysicalDevice physical_device, VkFormats const& possible_formats, VkImageUsageFlags usage);
 
     VkImageMemoryBarrier image_memory_barrier(VkImage image, VkImageLayout old_layout, VkImageLayout new_layout);
 
-- 
GitLab