32#include "../TaskSystem/TaskGraphTemplate.h"
ComponentTypeID GetComponentTypeID_Static()
Runtime context supplying Blackboard variables and dynamic pin values.
Manages single-threaded step-by-step execution of a TaskGraphTemplate.
void SetDynamicPinValue(const std::string &pinID, float value)
Sets the runtime value of a dynamic data pin.
bool IsBreakpointHit() const
Returns true when execution is paused at a breakpoint.
void SetBlackboardVariable(const std::string &key, float value)
Sets a Blackboard variable in the runtime environment.
bool EvaluateBranchConditions(const TaskNodeDefinition &node)
Evaluates all NodeConditionRefs on node and returns the result.
void ResumeFromBreakpoint()
Resumes execution after a breakpoint.
std::string m_lastError
Last error from condition evaluation.
void RemoveBreakpoint(int32_t nodeID)
Removes a previously registered breakpoint.
const TaskGraphTemplate & m_graph
Bound graph template (not owned)
std::vector< int32_t > m_executionStack
Active node IDs (front = next)
const std::string & GetLastError() const
Returns the last error message produced during execution.
RuntimeEnvironment m_environment
Blackboard + pin values.
const std::vector< int32_t > & GetActiveNodeIDs() const
Returns the IDs of all nodes currently on the execution stack.
bool m_isExecuting
True while stack is non-empty.
bool m_skipBreakpointOnce
Skip breakpoint check for one step after Resume.
bool m_breakpointHit
True when paused at a breakpoint.
void AddBreakpoint(int32_t nodeID)
Registers a breakpoint on a node.
bool IsExecuting() const
Returns true while there are nodes left to execute.
void StartExecution()
Initialises the execution stack and marks the instance as running.
bool StepExecution()
Advances execution by one node.
std::set< int32_t > m_breakpoints
Registered breakpoint node IDs.
Provides Blackboard variable values and dynamic pin values at runtime.
Immutable, shareable task graph asset.
< Provides AssetID and INVALID_ASSET_ID
Full description of a single node in the task graph.