Class PipelineLayout

Class Documentation

class PipelineLayout

RAII wrapper class for VkPipelineLayout.

Public Functions

PipelineLayout(const Device &device, std::string name, std::span<const VkDescriptorSetLayout> descriptor_set_layouts, std::span<const VkPushConstantRange> push_constant_ranges)

Call vkCreatePipelineLayout

Note

The constructor is private because only friend class RenderGraph needs access to it

Parameters:
  • device – The device wrapper

  • name – The name of the pipeline layout

  • descriptor_set_layouts – The descriptor set layouts of the pipeline layout

  • push_constant_ranges – The push constant ranges of the pipeline layout

PipelineLayout(const PipelineLayout&) = delete
PipelineLayout(PipelineLayout&&) noexcept
PipelineLayout &operator=(const PipelineLayout&) = delete
PipelineLayout &operator=(PipelineLayout &&other) noexcept
~PipelineLayout()

Call vkDestroyPipelineLayout.

Public Members

const Device &m_device
std::string m_name
VkPipelineLayout m_pipeline_layout = {VK_NULL_HANDLE}

Friends

friend class RenderGraph
friend class GraphicsPipeline
friend class CommandBuffer