Magnum::Vk::BufferCreateInfo class new in Git master

Buffer creation info.

Wraps a VkBufferCreateInfo. See Buffer creation for usage information.

Public types

enum class Flag: UnsignedInt { }
Buffer creation flag.
using Flags = Containers::EnumSet<Flag>
Buffer creation flags.

Constructors, destructors, conversion operators

BufferCreateInfo(BufferUsages usages, UnsignedLong size, Flags flags = {}) explicit
Constructor.
BufferCreateInfo(NoInitT) explicit noexcept
Construct without initializing the contents.
BufferCreateInfo(const VkBufferCreateInfo& info) explicit
Construct from existing data.
operator const VkBufferCreateInfo*() const

Public functions

auto operator*() -> VkBufferCreateInfo&
Underlying VkBufferCreateInfo structure.
auto operator*() const -> const VkBufferCreateInfo&
auto operator->() -> VkBufferCreateInfo*
auto operator->() const -> const VkBufferCreateInfo*

Enum documentation

enum class Magnum::Vk::BufferCreateInfo::Flag: UnsignedInt

Buffer creation flag.

Wraps VkBufferCreateFlagBits.

Typedef documentation

typedef Containers::EnumSet<Flag> Magnum::Vk::BufferCreateInfo::Flags

Buffer creation flags.

Type-safe wrapper for VkBufferCreateFlags.

Function documentation

Magnum::Vk::BufferCreateInfo::BufferCreateInfo(BufferUsages usages, UnsignedLong size, Flags flags = {}) explicit

Constructor.

Parameters
usages Desired buffer usage. At least one flag is required.
size Buffer size
flags Buffer creation flags

The following VkBufferCreateInfo fields are pre-filled in addition to sType, everything else is zero-filled:

Magnum::Vk::BufferCreateInfo::BufferCreateInfo(NoInitT) explicit noexcept

Construct without initializing the contents.

Note that not even the sType field is set — the structure has to be fully initialized afterwards in order to be usable.

Magnum::Vk::BufferCreateInfo::BufferCreateInfo(const VkBufferCreateInfo& info) explicit

Construct from existing data.

Copies the existing values verbatim, pointers are kept unchanged without taking over the ownership. Modifying the newly created instance will not modify the original data nor the pointed-to data.

Magnum::Vk::BufferCreateInfo::operator const VkBufferCreateInfo*() const

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

const VkBufferCreateInfo& Magnum::Vk::BufferCreateInfo::operator*() const

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

VkBufferCreateInfo* Magnum::Vk::BufferCreateInfo::operator->()

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

const VkBufferCreateInfo* Magnum::Vk::BufferCreateInfo::operator->() const

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.