8#include "Serialization/RenderPipelineReader.h"
10#include "Utilities/Expressions.h"
11#include "Renderer/RenderPipelineManager.h"
17 COGSCORE_DLL_API RenderTask * createRenderTask(RenderTaskContext * taskContext,
18 const RenderTaskDefinition & taskDefinition,
19 std::list<std::unique_ptr<Cogs::Core::SubContext>>& subContexts,
20 ExpressionContext * expressionContext,
21 const PipelineOptions & options = PipelineOptions());
23 void destroyRenderTask(RenderTaskContext* renderContext, RenderTask * task);
25 typedef std::function<RenderTask *(RenderTaskContext *,
const RenderTaskDefinition &,
const PipelineOptions &)> TaskCreator;
26 typedef std::function<void(RenderTask **, RenderTaskContext *)> TaskDestroyer;
28 void COGSCORE_DLL_API addTaskType(
const StringView & key, TaskCreator creator, TaskDestroyer destroyer);
30 void freeTasks(std::vector<RenderTask *> & tasks, RenderTaskContext * renderContext);
Contains all Cogs related functionality.