![]() |
Raven Engine v0.1
|
Abstract interface for managing a rendering pipeline. More...
#include <Pipeline.h>
Public Member Functions | |
| virtual | ~Pipeline ()=default |
| virtual PipelineSpecification & | GetSpecification ()=0 |
| Retrieves a mutable reference to the pipeline specification. | |
| virtual const PipelineSpecification & | GetSpecification () const =0 |
| Retrieves an immutable reference to the pipeline specification. | |
| virtual void | Invalidate ()=0 |
| Recreates or updates the pipeline state, typically after configuration changes. | |
| virtual void | Rebuild (const PipelineSpecification &spec)=0 |
| Rebuilds the pipeline based on an updated Specification. | |
| virtual Ref< Shader > | GetShader () const =0 |
| Returns the currently bound shader program. | |
Static Public Member Functions | |
| static Ref< Pipeline > | Create (const PipelineSpecification &spec) |
| Factory method to create a Pipeline from a given specification. | |
Abstract interface for managing a rendering pipeline.
Responsible for binding shaders, configuring GPU state, and managing the pipeline lifecycle. Implementations manage the GPU resources associated with the pipeline.
|
virtualdefault |
|
static |
Factory method to create a Pipeline from a given specification.
| spec | PipelineSpecification describing desired pipeline state. |
Returns the currently bound shader program.
Implemented in Raven::VulkanPipeline.
|
pure virtual |
Retrieves an immutable reference to the pipeline specification.
Implemented in Raven::VulkanPipeline.
|
pure virtual |
Retrieves a mutable reference to the pipeline specification.
Implemented in Raven::VulkanPipeline.
|
pure virtual |
Recreates or updates the pipeline state, typically after configuration changes.
Implemented in Raven::VulkanPipeline.
|
pure virtual |
Rebuilds the pipeline based on an updated Specification.
| spec | The specification that has been changed. |
Implemented in Raven::VulkanPipeline.