Class ResourceDescriptor

Class Documentation

class inexor::vulkan_renderer::wrapper::ResourceDescriptor

RAII wrapper class for resource descriptors.

Public Functions

ResourceDescriptor(const Device &device, std::uint32_t swapchain_image_count, std::vector<VkDescriptorSetLayoutBinding> &&layout_bindings, std::vector<VkWriteDescriptorSet> &&descriptor_writes, std::string &&name)

Default constructor.

Parameters
  • device – The const reference to a device RAII wrapper instance.

  • swapchain_image_count – The number of images in swapchain.

  • layout_bindings – The descriptor layout bindings.

  • descriptor_writes – The write descriptor sets.

  • name – The internal debug marker name of the resource descriptor.

ResourceDescriptor(const ResourceDescriptor&) = delete
ResourceDescriptor(ResourceDescriptor&&) noexcept
~ResourceDescriptor()
ResourceDescriptor &operator=(const ResourceDescriptor&) = delete
ResourceDescriptor &operator=(ResourceDescriptor&&) = delete
inline const auto &descriptor_sets() const
inline auto descriptor_set_layout() const
inline const auto &descriptor_set_layout_bindings() const

Private Members

std::string m_name
const Device &m_device
VkDescriptorPool m_descriptor_pool = {VK_NULL_HANDLE}
VkDescriptorSetLayout m_descriptor_set_layout = {VK_NULL_HANDLE}
std::vector<VkDescriptorSetLayoutBinding> m_descriptor_set_layout_bindings
std::vector<VkWriteDescriptorSet> m_write_descriptor_sets
std::vector<VkDescriptorSet> m_descriptor_sets
std::uint32_t m_swapchain_image_count = {0}