MCPcopy Create free account
hub / github.com/BehaviorTree/BehaviorTree.CPP / BehaviorTreeFactory

Method BehaviorTreeFactory

src/bt_factory.cpp:114–181  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

112};
113
114BehaviorTreeFactory::BehaviorTreeFactory() : _p(new PImpl)
115{
116 _p->parser = std::make_shared<XMLParser>(*this);
117 _p->polymorphic_registry = std::make_shared<PolymorphicCastRegistry>();
118 registerNodeType<FallbackNode>("Fallback");
119 registerNodeType<FallbackNode>("AsyncFallback", true);
120 registerNodeType<SequenceNode>("Sequence");
121 registerNodeType<SequenceNode>("AsyncSequence", true);
122 registerNodeType<SequenceWithMemory>("SequenceWithMemory");
123
124#ifdef USE_BTCPP3_OLD_NAMES
125 registerNodeType<SequenceWithMemory>("SequenceStar"); // backward compatibility
126#endif
127
128 registerNodeType<ParallelNode>("Parallel");
129 registerNodeType<ParallelAllNode>("ParallelAll");
130 registerNodeType<ReactiveSequence>("ReactiveSequence");
131 registerNodeType<ReactiveFallback>("ReactiveFallback");
132 registerNodeType<IfThenElseNode>("IfThenElse");
133 registerNodeType<WhileDoElseNode>("WhileDoElse");
134 registerNodeType<TryCatchNode>("TryCatch");
135
136 registerNodeType<InverterNode>("Inverter");
137
138 registerNodeType<RetryNode>("RetryUntilSuccessful");
139 registerNodeType<KeepRunningUntilFailureNode>("KeepRunningUntilFailure");
140 registerNodeType<RepeatNode>("Repeat");
141 registerNodeType<TimeoutNode>("Timeout");
142 registerNodeType<DelayNode>("Delay");
143 registerNodeType<RunOnceNode>("RunOnce");
144
145 registerNodeType<ForceSuccessNode>("ForceSuccess");
146 registerNodeType<ForceFailureNode>("ForceFailure");
147
148 registerNodeType<AlwaysSuccessNode>("AlwaysSuccess");
149 registerNodeType<AlwaysFailureNode>("AlwaysFailure");
150 registerNodeType<ScriptNode>("Script");
151 registerNodeType<ScriptCondition>("ScriptCondition");
152 registerNodeType<SetBlackboardNode>("SetBlackboard");
153 registerNodeType<SleepNode>("Sleep");
154 registerNodeType<UnsetBlackboardNode>("UnsetBlackboard");
155
156 registerNodeType<SubTreeNode>("SubTree");
157
158 registerNodeType<PreconditionNode>("Precondition");
159
160 registerNodeType<SwitchNode<2>>("Switch2");
161 registerNodeType<SwitchNode<3>>("Switch3");
162 registerNodeType<SwitchNode<4>>("Switch4");
163 registerNodeType<SwitchNode<5>>("Switch5");
164 registerNodeType<SwitchNode<6>>("Switch6");
165
166 registerNodeType<LoopNode<int>>("LoopInt");
167 registerNodeType<LoopNode<bool>>("LoopBool");
168 registerNodeType<LoopNode<double>>("LoopDouble");
169 registerNodeType<LoopNode<std::string>>("LoopString");
170
171 registerNodeType<EntryUpdatedAction>("WasEntryUpdated");

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected