VV::V3::Framebuffer class

Render passes operate in conjunction with framebuffers. Framebuffers represent a collection of specific memory attachments that a render pass instance uses.

This object represents a device created object on the host. As such ownership is tied to this host object. Due to this design, the object has no copy-construction allowed. Instead, default move constructor and assignment has been defined.

Base classes

struct VV::V2::Framebuffer
Render passes operate in conjunction with framebuffers. Framebuffers represent a collection of specific memory attachments that a render pass instance uses.

Public types

using Parent = V2::Framebuffer

Constructors, destructors, conversion operators

Framebuffer()
Default constructor.
Framebuffer(const LogicalDevice& _device)
Logical device specified.
Framebuffer(const LogicalDevice& _device, const Memory::AllocationCallbacks& _allocator)
Logical device and allocator specified.
Framebuffer(Framebuffer&& _other) noexcept
Performs a move operation to transfer ownership of the device object to this host object.
~Framebuffer()
Destroy the framebuffer.
operator Handle&()
Implicit conversion to give a reference to its handle.
operator const Handle&() const
Implicit conversion to give a readonly reference to its handle.
operator const Handle*() const
Implicit conversion to give a pointer to its handle.

Public functions

auto Create(const CreateInfo& _info) -> EResult
Create the framebuffer.
auto Create(const LogicalDevice& _device, const CreateInfo& _info) -> EResult
Create the framebuffer (logical device specified).
auto Create(const LogicalDevice* _device, const CreateInfo& _info, const Memory::AllocationCallbacks& _allocator) -> EResult
Create the framebuffer (logical device and allocator specified).
void Destroy()
Destroy the framebuffer.
auto operator==(const Framebuffer& _other) const -> bool
Checks to see if its the same object by checking to see if its the same handle.
auto operator=(Framebuffer&& _other) -> Framebuffer& noexcept
Performs a move assignment operation to transfer ownership of the device object to this host object.

Protected variables

Handle handle
const Memory::AllocationCallbacks* allocator
const LogicalDevice* device