X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fbackends%2Fvulkan%2Fframebuffer_backend.h;h=24c1d9c6d0b238b4866cb5b2617c575372eafdc7;hb=627d68b024f0d2fed4a03f0d9d3bb4b78358d6f3;hp=ff15c0d556a8770dc4159e1994404646f04a8b2a;hpb=99ca354f18119f82f1adeca100cd665a8f640317;p=libs%2Fgl.git diff --git a/source/backends/vulkan/framebuffer_backend.h b/source/backends/vulkan/framebuffer_backend.h index ff15c0d5..24c1d9c6 100644 --- a/source/backends/vulkan/framebuffer_backend.h +++ b/source/backends/vulkan/framebuffer_backend.h @@ -9,27 +9,35 @@ namespace Msp { namespace GL { class Device; +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 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; };