25 virtual std::shared_ptr<ITreeStructure>
CreateTree(
const String &name =
"New Tree") = 0;
Abstract factory interface for creating behavior tree implementations.
virtual std::shared_ptr< ITreeStructure > CreateTree(const String &name="New Tree")=0
Create a new empty behavior tree.
virtual std::shared_ptr< ITreeStructure > CreateSampleTree()=0
Create a sample behavior tree for testing.
virtual String GetFactoryName() const =0
Get the name of this factory implementation.
virtual ~ITreeFactory()=default
virtual std::shared_ptr< ITreeNode > CreateNode(const String &name, ITreeNode::NodeType type)=0
Create a new node.
virtual bool SupportsFeature(const String &feature_name) const =0
Check if this factory supports a specific feature.
virtual String GetFactoryVersion() const =0
Get the version of this factory implementation.
NodeType
Node types for visualization categorization.
Main types header for EmberCore.
std::string String
Framework-agnostic string type.