class new in Git master
DescriptorPoolCreateInfoDescriptor pool creation info.
Wraps a VkDescriptorPoolCreateInfo and the nested VkDescriptorPoolSize structures. See Descriptor pool creation for usage information.
Public types
- enum class Flag: UnsignedInt { FreeDescriptorSet = VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT, UpdateAfterBind = VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT }
- Descriptor pool creation flag.
-
using Flags = Containers::
EnumSet<Flag> - DescriptorPool creation flags.
Constructors, destructors, conversion operators
-
DescriptorPoolCreateInfo(UnsignedInt maxSets,
Containers::
ArrayView<const Containers:: Pair<DescriptorType, UnsignedInt>> poolSizes, Flags flags = {}) explicit - Constructor.
-
DescriptorPoolCreateInfo(UnsignedInt maxSets,
std::
initializer_list<Containers:: Pair<DescriptorType, UnsignedInt>> poolSizes, Flags flags = {}) explicit - DescriptorPoolCreateInfo(NoInitT) explicit noexcept
- Construct without initializing the contents.
- DescriptorPoolCreateInfo(const VkDescriptorPoolCreateInfo& info) explicit
- Construct from existing data.
- DescriptorPoolCreateInfo(const DescriptorPoolCreateInfo&) deleted
- Copying is not allowed.
- DescriptorPoolCreateInfo(DescriptorPoolCreateInfo&& other) noexcept
- Move constructor.
- operator const VkDescriptorPoolCreateInfo*() const
Public functions
- auto operator=(const DescriptorPoolCreateInfo&) -> DescriptorPoolCreateInfo& deleted
- Copying is not allowed.
- auto operator=(DescriptorPoolCreateInfo&& other) -> DescriptorPoolCreateInfo& noexcept
- Move assignment.
- auto operator*() -> VkDescriptorPoolCreateInfo&
- Underlying VkDescriptorPoolCreateInfo structure.
- auto operator*() const -> const VkDescriptorPoolCreateInfo&
- auto operator->() -> VkDescriptorPoolCreateInfo*
- auto operator->() const -> const VkDescriptorPoolCreateInfo*
Enum documentation
enum class Magnum:: Vk:: DescriptorPoolCreateInfo:: Flag: UnsignedInt
Descriptor pool creation flag.
Wraps VkDescriptorPoolCreateFlagBits.
Enumerators | |
---|---|
FreeDescriptorSet |
Allow individual descriptor sets to be freed instead of just the whole pool. |
UpdateAfterBind |
Descriptor sets allocated from this pool can use bindings with the DescriptorSetLayoutBinding:: |
Typedef documentation
typedef Containers:: EnumSet<Flag> Magnum:: Vk:: DescriptorPoolCreateInfo:: Flags
DescriptorPool creation flags.
Type-safe wrapper for VkDescriptorPoolCreateFlags.
Function documentation
Magnum:: Vk:: DescriptorPoolCreateInfo:: DescriptorPoolCreateInfo(UnsignedInt maxSets,
Containers:: ArrayView<const Containers:: Pair<DescriptorType, UnsignedInt>> poolSizes,
Flags flags = {}) explicit
Constructor.
Parameters | |
---|---|
maxSets | Maximum count of descriptor sets that can be allocated from this pool. Has to be at least one. |
poolSizes | Pool sizes for each descriptor type. There has to be at least one, and pool sizes can't be zero. |
flags | DescriptorPool creation flags |
The following VkDescriptorPoolCreateInfo fields are pre-filled in addition to sType
, everything else is zero-filled:
flags
maxSets
poolSizeCount
andpPoolSizes
topoolSizes
converted to a list of VkDescriptorPoolSize structures
Magnum:: Vk:: DescriptorPoolCreateInfo:: DescriptorPoolCreateInfo(UnsignedInt maxSets,
std:: initializer_list<Containers:: Pair<DescriptorType, UnsignedInt>> poolSizes,
Flags flags = {}) explicit
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Magnum:: Vk:: DescriptorPoolCreateInfo:: DescriptorPoolCreateInfo(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:: DescriptorPoolCreateInfo:: DescriptorPoolCreateInfo(const VkDescriptorPoolCreateInfo& 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:: DescriptorPoolCreateInfo:: operator const VkDescriptorPoolCreateInfo*() const
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
const VkDescriptorPoolCreateInfo& Magnum:: Vk:: DescriptorPoolCreateInfo:: operator*() const
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
VkDescriptorPoolCreateInfo* Magnum:: Vk:: DescriptorPoolCreateInfo:: operator->()
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
const VkDescriptorPoolCreateInfo* Magnum:: Vk:: DescriptorPoolCreateInfo:: operator->() const
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.