40#include "../ECS_Systems.h"
41#include "../ECS/Components/TaskRunnerComponent.h"
43#include "../Core/AssetManager.h"
122 virtual void Process()
override;
ComponentTypeID GetComponentTypeID_Static()
Runtime key-value store for task graph variables.
Immutable asset structure shared by all task graph runners.
Exécuteur de graphes ATS Visual Scripting (flowchart).
Simple map-based blackboard for task graph runtime state.
Immutable, shareable task graph asset.
ECS system responsible for advancing task graph execution each frame.
virtual void Process() override
Processes all entities registered with this system for one frame.
void ExecuteAtomicTask(EntityID entity, TaskRunnerComponent &runner, const TaskNodeDefinition &node, const TaskGraphTemplate *tmpl, float dt)
Executes one tick of an AtomicTask node.
void ExecuteVSFrame(EntityID entity, TaskRunnerComponent &runner, const TaskGraphTemplate *tmpl, float dt)
Dispatches VS-graph execution to VSGraphExecutor.
static void SetEditorPublishCallback(TaskEditorPublishFn fn)
Register a callback that receives live task-runner state each frame while a task is executing.
TaskSystem()
Constructs the system and configures the required component signature.
void AbortActiveTask(TaskRunnerComponent &runner)
Aborts the active atomic task on a runner, if any.
void ExecuteNode(EntityID entity, TaskRunnerComponent &runner, const TaskGraphTemplate *tmpl, float dt)
Advances execution of one node in the task graph for the given entity.
static TaskEditorPublishFn s_EditorPublishFn
Callback registered by the editor to receive live runtime info.
void TransitionToNextNode(TaskRunnerComponent &runner, const TaskNodeDefinition &node, bool success)
Advances runner.CurrentNodeID after a node completes.
< Provides AssetID and INVALID_ASSET_ID
void(*)(EntityID entity, int nodeIndex, const LocalBlackboard *bb) TaskEditorPublishFn
Signature of the editor publish callback.
Full description of a single node in the task graph.
Per-entity runtime state for task graph execution.