Skip to content

LiteFX::Rendering::PipelineLayout

Represents a the layout of a RenderPipeline, ComputePipeline or RayTracingPipeline.

Synopsis

Declared in <litefx/rendering.hpp>

template<
    typename TDescriptorSetLayout,
    typename TPushConstantsLayout>
requires meta::implements<TDescriptorSetLayout, DescriptorSetLayout<typename TDescriptorSetLayout::descriptor_layout_type, typename TDescriptorSetLayout::descriptor_set_type>> &&
        meta::implements<TPushConstantsLayout, PushConstantsLayout<typename TPushConstantsLayout::push_constants_range_type>>
class PipelineLayout
    : public IPipelineLayout

Base Classes

NameDescription
IPipelineLayoutThe interface for a pipeline layout.

Type Aliases

Member Functions

NameDescription
~PipelineLayout [destructor] [virtual]Destructor
descriptorSet [virtual]Returns the descriptor set layout for the descriptor set that is bound to the space provided by space.
descriptorSets [virtual]Returns all descriptor set layouts, the pipeline has been initialized with.
dynamicResourceHeapAccess [virtual]Returns true, if the pipeline supports directly indexing into a resource heap and false otherwise.
dynamicSamplerHeapAccess [virtual]Returns true, if the pipeline supports directly indexing into a sampler heap and false otherwise.
pushConstants [virtual]Returns the push constants layout, or nullptr, if the pipeline does not use any push constants.
shared_from_this Returns a shared pointer to the current object instance.
weak_from_this Returns a weak pointer to the current object instance.

Protected Types

NameDescription
Allocator An allocator used to allocate the shared object.

Protected Member Functions

NameDescription
PipelineLayout [constructor]Constructors
operator= Assignment operators

Protected Static Member Functions

NameDescription
create Generic factory method used to create instances of the shared object.

Template Parameters

NameDescription
TDescriptorSetLayoutThe type of the descriptor set layout. Must implement DescriptorSetLayout.
TPushConstantsLayoutThe type of the push constants layout. Must implement PushConstantsLayout.

Derived Classes

NameDescription
DirectX12PipelineLayout Implements a DirectX 12 PipelineLayout.
VulkanPipelineLayout Implements a Vulkan PipelineLayout.