67 virtual size_t GetId()
const = 0;
126 return "BehaviorTree";
Abstract interface for tree nodes that can be visualized.
virtual bool IsUnimplementedReference() const
Check if this node references an unimplemented tree.
virtual String GetTypeString() const
virtual void Accept(std::function< void(const ITreeNode *)> visitor) const =0
virtual bool IsSubTreeReference() const
Check if this node is a SubTree reference.
virtual size_t GetSubtreeNodeCount() const =0
virtual size_t GetId() const =0
virtual String GetSubTreeReference() const
Get the ID of the referenced SubTree (if this is a SubTree node)
virtual size_t GetChildCount() const =0
virtual const Point & GetPosition() const =0
virtual NodeType GetType() const =0
virtual ITreeNode * GetParent() const =0
virtual ~ITreeNode()=default
virtual void SetChildrenWidth(int width)=0
virtual int CalculateSubtreeWidth(int node_width, int horizontal_spacing) const =0
virtual void ToggleChildrenVisibility()
VisualState
Visual state for UI rendering.
virtual bool AreChildrenVisible() const =0
virtual size_t GetDepth() const =0
virtual bool HasChildren() const
virtual void Accept(std::function< void(ITreeNode *)> visitor)=0
virtual int GetChildrenWidth() const =0
virtual void SetChildrenVisible(bool visible)=0
virtual const String & GetName() const =0
virtual VisualState GetVisualState() const =0
virtual void SetPosition(const Point &position)=0
virtual NodeStatus GetStatus() const =0
virtual String GetStatusString() const
virtual ITreeNode * GetChild(size_t index) const =0
NodeType
Node types for visualization categorization.
NodeStatus
Node status for runtime visualization.
virtual void SetVisualState(VisualState state)=0
Main types header for EmberCore.
std::string String
Framework-agnostic string type.
2D point with integer coordinates