|
CeresEngine 0.2.0
A game development framework
|
#include <CeresEngine/Renderer/RenderGraph/RenderTask.hpp>
Public Member Functions | |
| RenderTask (RenderGraph &renderGraph) | |
| virtual | ~RenderTask () |
| RenderTaskResourceUsage & | compile () |
| Compiles the render task. | |
| virtual void | execute (RenderGraphContext &context, GPUCommandBuffer &commandBuffer)=0 |
Executes the render task with the given commandBuffer. | |
| virtual StringView | getName () const |
| Returns a display name for the render task. | |
| virtual RenderTaskStatus | check () const |
| Returns true if the task is dirty and needs to be run. | |
| virtual Any | getSettings () const |
| Gets a const-reference to the render task settings. | |
| virtual Any | getSettings () |
| Gets a reference to the render task settings. | |
| const Vector< InputSlot * > & | getInputs () const |
| const Vector< OutputSlot * > & | getOutputs () const |
| const RenderTaskResourceUsage & | getResourceUsage () const |
Public Member Functions inherited from CeresEngine::RefCounted< RenderTask > | |
| RefCounted (Args &&... args) | |
Creates a new RefCounted object and constructs a new Deleter by forwarding Args to it. | |
| void | retain () noexcept |
| Retains the object by increment it's reference count by one. | |
| bool | release () noexcept |
| Relases the object by decrementing it's reference count by one. | |
Protected Member Functions | |
| virtual void | compile (RenderTaskCompiler &compiler)=0 |
| Compiles the render task. | |
| virtual bool | shouldConnect (const Slot &slot, const Slot &targetSlot) const |
| An internal method called whenever a new connection is being made. | |
| virtual void | willConnect (Slot &slot, Slot &targetSlot) |
| An internal method called before the slot is connected. | |
| virtual void | didConnect (Slot &slot, Connection &connection) |
| An internal method called after the slot is connected. | |
| virtual bool | shouldDisconnect (const Slot &slot, const Connection &connection) const |
| An internal method called whenever a new disconnection is being made. | |
| virtual void | willDisconnect (Slot &slot, Connection &connection) |
| An internal method called before the slot is disconnected. | |
| virtual void | didDisconnect (Slot &slot, Connection &connection) |
| An internal method called whenever the slot is disconnected. | |
| ImageRenderResource & | create (const GPUImageDescriptor &descriptor) |
| BufferRenderResource & | create (const GPUBufferDescriptor &descriptor) |
Protected Attributes | |
| RenderTaskResourceUsage | mResourceUsage |
Private Attributes | |
| RenderGraph & | mRenderGraph |
| Vector< InputSlot * > | mInputs |
| Vector< OutputSlot * > | mOutputs |
Friends | |
| class | RenderGraph |
| class | Slot |
| class | InputSlot |
| class | OutputSlot |
|
inlineexplicit |
|
virtual |
|
inlinevirtual |
Returns true if the task is dirty and needs to be run.
| RenderTaskResourceUsage & CeresEngine::RenderTask::compile | ( | ) |
Compiles the render task.
|
protectedpure virtual |
Compiles the render task.
Implemented in CeresEngine::PresentRenderTask, CeresEngine::UnshadedRenderTask, CeresEngine::DepthPrePassRenderTask, CeresEngine::BasePassRenderTask, CeresEngine::BasePassTerrainRenderTask, CeresEngine::FinalCompositingRenderTask, CeresEngine::PBRDeferredLightingRenderTask, CeresEngine::IBLAmbientLightingRenderTask, CeresEngine::SkyboxRenderTask, CeresEngine::VoxelConeTracing::VoxelizationRenderTask, CeresEngine::VoxelConeTracing::InjectRadianceRenderTask, CeresEngine::VoxelConeTracing::PropagateRadianceRenderTask, CeresEngine::VoxelConeTracing::IndirectLightingRenderTask, CeresEngine::VoxelConeTracing::UpscalingRenderTask, CeresEngine::VoxelConeTracing::DebugRenderTask, and CeresEngine::Graphics::UI::UIRenderTask.
|
protected |
|
protected |
|
protectedvirtual |
An internal method called after the slot is connected.
|
protectedvirtual |
An internal method called whenever the slot is disconnected.
|
pure virtual |
Executes the render task with the given commandBuffer.
| commandBuffer | The command buffer to encode the render task to. |
Implemented in CeresEngine::PresentRenderTask, CeresEngine::VoxelConeTracing::VoxelizationRenderTask, CeresEngine::VoxelConeTracing::InjectRadianceRenderTask, CeresEngine::VoxelConeTracing::PropagateRadianceRenderTask, CeresEngine::GraphicsRenderTask, CeresEngine::SimpleComputeRenderTask, CeresEngine::SimpleGraphicsRenderTask, CeresEngine::SimpleGraphicsRenderTask2, and CeresEngine::VoxelConeTracing::VoxelizationRenderTask.
|
inlinevirtual |
Returns a display name for the render task.
Reimplemented in CeresEngine::SimpleGraphicsRenderTask, CeresEngine::SimpleGraphicsRenderTask2, and CeresEngine::SimpleComputeRenderTask.
|
inline |
|
inline |
Gets a reference to the render task settings.
Gets a const-reference to the render task settings.
|
inlineprotectedvirtual |
An internal method called whenever a new connection is being made.
The slot implementation can use this method to refuse connections.
|
inlineprotectedvirtual |
An internal method called whenever a new disconnection is being made.
The slot implementation can use this method to refuse disconnections.
|
inlineprotectedvirtual |
An internal method called before the slot is connected.
|
inlineprotectedvirtual |
An internal method called before the slot is disconnected.
|
friend |
|
friend |
|
private |
|
private |
|
protected |