12 <root main_tree_to_execute="MainTree"> 13 <BehaviorTree ID="MainTree"> 15 <SaySomething message="starting MainTree" /> 24 <BehaviorTree ID="SubA"> 25 <SaySomething message="Executing SubA" /> 31 <BehaviorTree ID="SubB"> 32 <SaySomething message="Executing SubB" /> 52 std::cout <<
"Registered BehaviorTrees:" << std::endl;
55 std::cout <<
" - " << bt_name << std::endl;
59 std::cout <<
"----- MainTree tick ----" << std::endl;
60 auto main_tree = factory.
createTree(
"MainTree");
64 std::cout <<
"----- SubA tick ----" << std::endl;
static const char * xml_text_subA
static const char * xml_text_main
static const char * xml_text_subB
void registerNodeType(const std::string &ID)
void registerBehaviorTreeFromText(const std::string &xml_text)
The BehaviorTreeFactory is used to create instances of a TreeNode at run-time.
std::vector< std::string > registeredBehaviorTrees() const
NodeStatus tickRootWhileRunning(std::chrono::milliseconds sleep_time=std::chrono::milliseconds(10))
tickRootWhileRunning imply execute tickRoot in a loop as long as the status is RUNNING.
Tree createTree(const std::string &tree_name, Blackboard::Ptr blackboard=Blackboard::create())