Skip to content

LiteFX::Rendering::Pipeline

Represents a pipeline state.

Synopsis

Declared in <litefx/rendering.hpp>

template<
    typename TPipelineLayout,
    typename TShaderProgram>
requires meta::implements<TPipelineLayout, PipelineLayout<typename TPipelineLayout::descriptor_set_layout_type, typename TPipelineLayout::push_constants_layout_type>> &&
        meta::implements<TShaderProgram, ShaderProgram<typename TShaderProgram::shader_module_type>>
class Pipeline
    : public virtual IPipeline
    , public virtual StateResource

Base Classes

NameDescription
IPipelineThe interface for a pipeline.
StateResourceBase class for a resource that can be identified by a name string within a DeviceState.

Member Functions

NameDescription
layout Returns the layout of the render pipeline.
name [virtual]Returns the name of the resource.
program Returns the shader program used by the pipeline.

Protected Member Functions

NameDescription
operator= Assignment operators
name Returns the name of the resource.

Derived Classes

NameDescription
ComputePipeline Represents a compute Pipeline.
DirectX12PipelineState Defines the base class for DirectX 12 pipeline state objects.
RayTracingPipeline Represents a ray-tracing Pipeline.
RenderPipeline Represents a graphics Pipeline.
RenderPipeline Represents a graphics Pipeline.
VulkanPipelineState Defines the base class for Vulkan pipeline state objects.

Template Parameters

NameDescription
TPipelineLayoutThe type of the render pipeline layout. Must implement PipelineLayout.
TShaderProgramThe type of the shader program. Must implement ShaderProgram.

See Also

RenderPipeline

ComputePipeline