48 virtual std::vector<const ITreeNode *>
GetAllNodes()
const = 0;
Abstract interface for tree nodes that can be visualized.
NodeType
Node types for visualization categorization.
Abstract interface for tree structures that can be visualized.
virtual std::vector< ITreeNode * > FindNodesByType(ITreeNode::NodeType type) const =0
virtual void TraverseNodes(std::function< void(ITreeNode *)> visitor)=0
virtual std::vector< const ITreeNode * > GetAllNodes() const =0
virtual void PrintTree() const =0
virtual bool IsValid() const =0
virtual ITreeNode * FindNodeByName(const String &name) const =0
virtual const String & GetName() const =0
virtual ~ITreeStructure()=default
virtual bool HasRootNode() const
virtual bool HasCycles() const =0
virtual size_t GetMaxDepth() const =0
virtual size_t GetNodeCount() const =0
virtual const String & GetDescription() const =0
virtual ITreeNode * FindNodeById(size_t id) const =0
virtual ITreeNode * GetRootNode() const =0
virtual void TraverseNodes(std::function< void(const ITreeNode *)> visitor) const =0
virtual std::vector< ITreeNode * > GetAllNodes()=0
virtual String GetTreeStructure() const =0
Main types header for EmberCore.
std::string String
Framework-agnostic string type.