24#include "../AI/BehaviorTree.h"
25#include "../TaskSystem/TaskGraphTemplate.h"
26#include "../BlueprintEditor/GraphExecutionTracer.h"
ComponentTypeID GetComponentTypeID_Static()
Converts BehaviorTree structures to generic TaskGraphTemplate format for simulation.
static void AddNodeToGraph(const BTNode &btNode, const BehaviorTreeAsset &btAsset, TaskGraphTemplate &outGraph, std::map< uint32_t, int32_t > &btToGraphIdMap)
Helper: Recursively adds a node and its children to the graph.
static uint32_t FindParentNodeId(uint32_t childNodeId, const BehaviorTreeAsset &btAsset)
Helper: Finds parent node ID for a given child node.
static bool ValidateTreeStructure(const BehaviorTreeAsset &btAsset)
Validates BehaviorTree structure before conversion.
static int32_t CalculateNodeDepth(uint32_t nodeId, const BehaviorTreeAsset &btAsset)
Helper: Calculates depth of a node in BT hierarchy.
static std::string GetBTNodeTypeName(uint8_t type)
Helper: Gets BehaviorTree node type name.
static std::unique_ptr< TaskGraphTemplate > AdaptToTaskGraph(const BehaviorTreeAsset &btAsset)
Converts a BehaviorTreeAsset to TaskGraphTemplate format.
static std::string FormatTraceForBehaviorTree(const GraphExecutionTracer &tracer, const BehaviorTreeAsset &btAsset)
Formats generic execution trace back to BehaviorTree-specific context.
Records execution trace during graph simulation.
Immutable, shareable task graph asset.
< Provides AssetID and INVALID_ASSET_ID
Represents a single node in a behavior tree.