Class Image

Class Documentation

class inexor::vulkan_renderer::wrapper::Image

RAII wrapper class for VkImage.

Public Functions

Image(const Device &device, VkFormat format, VkImageUsageFlags image_usage, VkImageAspectFlags aspect_flags, VkSampleCountFlagBits sample_count, const std::string &name, VkExtent2D image_extent)

Default constructor.

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

  • format – The color format.

  • image_usage – The image usage flags.

  • aspect_flags – The aspect flags.

  • sample_count – The sample count.

  • name – The internal debug marker name of the VkImage.

  • image_extent – The width and height of the image.

Image(const Image&) = delete
Image(Image&&) noexcept
~Image()
Image &operator=(const Image&) = delete
Image &operator=(Image&&) = delete
inline VkFormat image_format() const
inline VkImageView image_view() const
inline VkImage get() const

Private Members

const wrapper::Device &m_device
VmaAllocation m_allocation = {VK_NULL_HANDLE}
VmaAllocationInfo m_allocation_info = {}
VkImage m_image = {VK_NULL_HANDLE}
VkFormat m_format = {VK_FORMAT_UNDEFINED}
VkImageView m_image_view = {VK_NULL_HANDLE}
std::string m_name