]> git.tdb.fi Git - libs/gl.git/blobdiff - source/backends/vulkan/framebuffer_backend.h
Make it possible to query if a framebuffer can be presented
[libs/gl.git] / source / backends / vulkan / framebuffer_backend.h
index 9a616875e8f888f8515fdec02202e97e738fcffa..faca5658feb7a0e2b1b5febf1c01d56e174dd787 100644 (file)
@@ -13,12 +13,14 @@ class Texture;
 
 class VulkanFramebuffer: public NonCopyable
 {
+       friend class RenderPass;
        friend class VulkanCommands;
        friend class VulkanPipelineState;
 
 protected:
        Device &device;
        mutable VkFramebuffer handle = 0;
+       mutable std::vector<VkImageView> view_handles;
        std::string debug_name;
 
        VulkanFramebuffer(bool);
@@ -26,12 +28,15 @@ protected:
        ~VulkanFramebuffer();
 
        bool is_format_supported(const FrameFormat &);
+       void format_changed(const FrameFormat &) { }
        static void require_layered() { }
 
+       bool is_presentable() const;
+
        void update(unsigned) const;
        void require_complete() const { }
 
-       void synchronize(bool = false) const;
+       void prepare_image_layouts(bool = false) const;
 
        void set_debug_name(const std::string &);
        void set_vulkan_object_name() const;