|
LiteFX 0.4.1.2025
Computer Graphics Engine
|
Represents a the layout of a RenderPipeline, ComputePipeline or RayTracingPipeline. More...
#include <rendering.hpp>
Inherits LiteFX::Rendering::IPipelineLayout.
Public Types | |
| using | descriptor_set_layout_type = TDescriptorSetLayout |
| using | push_constants_layout_type = TPushConstantsLayout |
Public Member Functions | |||
| ~PipelineLayout () noexcept override=default | |||
| const descriptor_set_layout_type & | descriptorSet (UInt32 space) const override=0 | ||
Returns the descriptor set layout for the descriptor set that is bound to the space provided by space .
| |||
| virtual const Array< SharedPtr< const descriptor_set_layout_type > > & | descriptorSets () const =0 | ||
| const push_constants_layout_type * | pushConstants () const noexcept override=0 | ||
Returns the push constants layout, or nullptr, if the pipeline does not use any push constants.
| |||
Public Member Functions inherited from LiteFX::Rendering::IPipelineLayout | |||
| ~IPipelineLayout () noexcept override=default | |||
| Enumerable< SharedPtr< const IDescriptorSetLayout > > | descriptorSets () const | ||
| Returns all descriptor set layouts, the pipeline has been initialized with. | |||
Public Member Functions inherited from LiteFX::SharedObject | |||
| virtual | ~SharedObject () noexcept=default | ||
| Destroys the shared object. | |||
| template<typename TSelf > | |||
| auto | shared_from_this (this TSelf &&self) noexcept | ||
| Returns a shared pointer to the current object instance. | |||
| template<typename TSelf > | |||
| auto | weak_from_this (this TSelf &&self) noexcept -> WeakPtr< std::remove_reference_t< TSelf > > | ||
| Returns a weak pointer to the current object instance. | |||
Protected Member Functions | |
| PipelineLayout () noexcept=default | |
| PipelineLayout (const PipelineLayout &)=default | |
| PipelineLayout (PipelineLayout &&) noexcept=default | |
| PipelineLayout & | operator= (const PipelineLayout &)=default |
| PipelineLayout & | operator= (PipelineLayout &&) noexcept=default |
Protected Member Functions inherited from LiteFX::Rendering::IPipelineLayout | |
| IPipelineLayout () noexcept=default | |
| IPipelineLayout (const IPipelineLayout &)=default | |
| IPipelineLayout (IPipelineLayout &&) noexcept=default | |
| IPipelineLayout & | operator= (const IPipelineLayout &)=default |
| IPipelineLayout & | operator= (IPipelineLayout &&) noexcept=default |
Protected Member Functions inherited from LiteFX::SharedObject | |
| SharedObject () noexcept=default | |
| Initializes a new shared object. | |
| SharedObject (SharedObject &&) noexcept=default | |
| SharedObject (const SharedObject &)=default | |
| SharedObject & | operator= (SharedObject &&) noexcept=default |
| SharedObject & | operator= (const SharedObject &)=default |
Additional Inherited Members | |
Static Protected Member Functions inherited from LiteFX::SharedObject | |
| template<typename T , typename... TArgs> | |
| static auto | create (TArgs &&... args) -> SharedPtr< T > |
| Generic factory method used to create instances of the shared object. | |
Represents a the layout of a RenderPipeline, ComputePipeline or RayTracingPipeline.
| TDescriptorSetLayout | The type of the descriptor set layout. Must implement DescriptorSetLayout. |
| TPushConstantsLayout | The type of the push constants layout. Must implement PushConstantsLayout. |
| using LiteFX::Rendering::PipelineLayout< TDescriptorSetLayout, TPushConstantsLayout >::descriptor_set_layout_type = TDescriptorSetLayout |
| using LiteFX::Rendering::PipelineLayout< TDescriptorSetLayout, TPushConstantsLayout >::push_constants_layout_type = TPushConstantsLayout |
|
protecteddefaultnoexcept |
|
protecteddefault |
|
protecteddefaultnoexcept |
|
overridedefaultnoexcept |
|
overridepure virtual |
Returns the descriptor set layout for the descriptor set that is bound to the space provided by space .
| space | The space to request the descriptor set layout for. |
Implements LiteFX::Rendering::IPipelineLayout.
Implemented in LiteFX::Rendering::Backends::DirectX12PipelineLayout, and LiteFX::Rendering::Backends::VulkanPipelineLayout.
|
pure virtual |
|
protecteddefault |
|
protecteddefaultnoexcept |
|
overridepure virtualnoexcept |
Returns the push constants layout, or nullptr, if the pipeline does not use any push constants.
nullptr, if the pipeline does not use any push constants.Implements LiteFX::Rendering::IPipelineLayout.
Implemented in LiteFX::Rendering::Backends::DirectX12PipelineLayout, and LiteFX::Rendering::Backends::VulkanPipelineLayout.