]> git.tdb.fi Git - libs/gl.git/blobdiff - source/backends/vulkan/framebuffer_backend.h
Rename VulkanFramebuffer::prepare_image_layouts to synchronize_resources
[libs/gl.git] / source / backends / vulkan / framebuffer_backend.h
index d9d7cc90d69f655d72b1b8bc42f8354ee58b72bc..24c1d9c6d0b238b4866cb5b2617c575372eafdc7 100644 (file)
@@ -13,24 +13,31 @@ 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);
        VulkanFramebuffer(VulkanFramebuffer &&);
        ~VulkanFramebuffer();
 
-       bool is_format_supported(const FrameFormat &);
+       bool is_format_supported(const FrameFormat &) const;
+       void format_changed(const FrameFormat &) { }
        static void require_layered() { }
 
+       bool is_presentable() const;
+
        void update(unsigned) const;
        void require_complete() const { }
 
+       void synchronize_resources(bool = false) const;
+
        void set_debug_name(const std::string &);
        void set_vulkan_object_name() const;
 };