25#include <unordered_map>
28#include "../../Core/AssetManager.h"
29#include "../../TaskSystem/TaskGraphTypes.h"
ComponentTypeID GetComponentTypeID_Static()
< Provides AssetID and INVALID_ASSET_ID
uint32_t AssetID
Opaque asset identifier: 32-bit FNV-1a hash of the asset file path.
static const AssetID INVALID_ASSET_ID
Sentinel value indicating an invalid / unloaded asset.
constexpr int32_t NODE_INDEX_NONE
Sentinel value for "no node" in node index / ID fields.
Per-entity runtime state for task graph execution.
int32_t SequenceChildIndex
For VSSequence: index of the next child to execute.
float StateTimer
Accumulated time (in seconds) spent in the current node state.
TaskStatus LastStatus
Status returned by the last completed node execution.
TaskRunnerComponent & operator=(TaskRunnerComponent &&)=default
TaskRunnerComponent(const TaskRunnerComponent &)=delete
std::string ActiveExecPinName
Name of the active exec pin on the current node (e.g. "Then", "Else", "Loop").
TaskStatus
Possible outcomes of a task node execution.
@ Success
The node completed successfully.
@ Running
The node is still executing (will be called again next frame).
@ Aborted
Execution was interrupted externally.
@ Failure
The node failed.
std::unique_ptr< IAtomicTask > activeTask
Owning pointer to the IAtomicTask instance that is currently executing for this runner.
std::unordered_map< std::string, Olympe::TaskValue > LocalBlackboard
Typed local blackboard for per-entity state.
std::string graphAssetPath
Path to the ATS Visual Script JSON asset file (.json).
std::unordered_map< std::string, Olympe::TaskValue > DataPinCache
Frame-local cache of computed data pin values (key = "nodeID:pinName").
AssetID GraphTemplateID
AssetID of the TaskGraphTemplate driving this runner.
std::unordered_map< int32_t, bool > DoOnceFlags
Per-node "already fired" flag for DoOnce nodes (key = nodeID).
TaskRunnerComponent(TaskRunnerComponent &&)=default
TaskRunnerComponent & operator=(const TaskRunnerComponent &)=delete
int32_t CurrentNodeID
ID of the currently active node.