3#include "spark/render/FrameBuffer.h"
4#include "spark/render/Resource.h"
5#include "spark/render/vk/Export.h"
6#include "spark/render/vk/Helpers.h"
7#include "spark/render/vk/VulkanCommandBuffer.h"
9SPARK_FWD_DECLARE_VK_HANDLE(VkFramebuffer)
10SPARK_FWD_DECLARE_VK_HANDLE(VkSemaphore)
12namespace spark::render::vk
14 class VulkanRenderPass;
42 [[nodiscard]]
const VkSemaphore& semaphore()
const noexcept;
50 [[nodiscard]] std::size_t& lastFence()
const noexcept;
53 [[nodiscard]]
unsigned bufferIndex()
const noexcept override;
62 [[nodiscard]] std::vector<std::shared_ptr<const VulkanCommandBuffer>> commandBuffers()
const noexcept override;
65 [[nodiscard]] std::shared_ptr<const VulkanCommandBuffer> commandBuffer(
unsigned index)
const override;
68 [[nodiscard]] std::vector<const IVulkanImage*> images()
const noexcept override;
71 [[nodiscard]]
const IVulkanImage& image(
unsigned location)
const override;
75 std::unique_ptr<Impl> m_impl;
A vector with two components.
Definition Vector2.h:13
Stores the images for the output attachments for a back buffer of a IRenderPass>, as well as a Comman...
Definition FrameBuffer.h:91
Represents a Vulkan image.
Definition VulkanImage.h:33
Vulkan implementation of IFrameBuffer.
Definition VulkanFrameBuffer.h:21
Vulkan implementation of IRenderPass.
Definition VulkanRenderPass.h:27
Definition VulkanFrameBuffer.cpp:23