Class GraphicsPipeline¶
Defined in File graphics_pipeline.hpp
Class Documentation¶
-
class GraphicsPipeline¶
RAII wrapper for graphics pipelines.
Public Functions
-
GraphicsPipeline(const Device &device, const PipelineCache &pipeline_cache, std::span<const VkDescriptorSetLayout> descriptor_set_layouts, std::span<const VkPushConstantRange> push_constant_ranges, VkGraphicsPipelineCreateInfo pipeline_ci, std::string name)¶
Default constructor
- Parameters:
device – The device wrapper
pipeline_cache – The Vulkan pipeline cache
descriptor_set_layouts – The descriptor set layouts in the pipeline layout
push_constant_ranges – The push constant ranges in the pipeline layout
pipeline_ci – The pipeline create info
name – The internal debug name of the graphics pipeline
-
GraphicsPipeline(const GraphicsPipeline&) = delete¶
-
GraphicsPipeline(GraphicsPipeline&&) noexcept¶
-
~GraphicsPipeline()¶
Call vkDestroyPipeline.
-
GraphicsPipeline &operator=(const GraphicsPipeline&) = delete¶
-
GraphicsPipeline &operator=(GraphicsPipeline&&) = delete¶
-
inline auto pipeline() const¶
-
inline auto pipeline_layout() const¶
Private Members
-
std::string m_name¶
-
VkPipeline m_pipeline¶
-
std::unique_ptr<PipelineLayout> m_pipeline_layout¶
Friends
- friend class commands::CommandBuffer
- friend class render_graph::RenderGraph
-
GraphicsPipeline(const Device &device, const PipelineCache &pipeline_cache, std::span<const VkDescriptorSetLayout> descriptor_set_layouts, std::span<const VkPushConstantRange> push_constant_ranges, VkGraphicsPipelineCreateInfo pipeline_ci, std::string name)¶