class
#include <VaultedVulkan/VV_Resource.hpp>
Buffer A linear array of data.
Contents
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::Buffer
- A linear array of data.
Public types
-
using Parent = V2::
Buffer
Constructors, destructors, conversion operators
- Buffer()
- Default constructor.
- Buffer(const LogicalDevice& _device)
- Logical device specified.
- Buffer(const LogicalDevice& _device, const Memory::AllocationCallbacks& _allocator)
- Logical device and allocator specified.
- Buffer(Buffer&& _other) noexcept
- Performs a move operation to transfer ownership of the device object to this host object.
- ~Buffer()
- Destroys the buffer if the handle is null.
- 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 BindMemory(const Memory& _memory, DeviceSize _memoryOffset) -> EResult
- Attach memory to a buffer object.
- auto Create(const CreateInfo& _info) -> EResult
- Create a buffer.
- auto Create(const LogicalDevice& _device, const CreateInfo& _info) -> EResult
- Create a buffer (logical device specified).
- auto Create(const LogicalDevice& _device, const CreateInfo& _info, const Memory::AllocationCallbacks& _allocator) -> EResult
- Create a buffer (logical device and allocator specified).
- void Destroy()
- Destroy the buffer.
- auto GetDevice() -> const LogicalDevice&
-
auto GetMemoryRequirements() const -> const Memory::
Requirements& - Provides the memory requirements for the buffer.
- auto operator==(const Buffer& _other) const -> bool
- Checks to see if its the same object by checking to see if its the same handle.
- auto operator=(Buffer&& _other) -> Buffer& 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
-
Memory::
Requirements memoryRequirements