Qualia  0.2
BehaviorTreeUtil.h
Go to the documentation of this file.
1 #ifndef BEHAVIOR_TREE_UTIL_H_
2 #define BEHAVIOR_TREE_UTIL_H_
3 
4 #include "BehaviorTree.h"
5 
6 namespace BehaviorTree {
7 
9 public:
10  PriorityNode* priority(TRAVERSAL_POLICY traversalPolicy = RESTART);
11 
13 
14  ParallelNode* parallel(FAILURE_POLICY failurePolicy = FAIL_ON_ALL, SUCCESS_POLICY successPolicy = SUCCEED_ON_ALL);
15 
17 
18  RepeatNode* repeat(int repeats);
19 
20  CountLimitNode* countLimit(int limit, bool allow_reinitialize = true);
21 
25 
26  SuccessAfter* successAfter(int t);
27  FailureAfter* failureAfter(int t);
28 
30 
33 };
34 
35 #define BT_END NULL
36 #define BT_END_WEIGHTED WeightedBehaviorTreeNode::NULL_WEIGHTED_NODE
37 
38 extern BehaviorTreeUtil BT;
39 
40 #define CHILDREN(...) setChildren(__VA_ARGS__, NULL)
41 #define WEIGHTED_CHILDREN(...) setWeightedChildren(__VA_ARGS__, WeightedBehaviorTreeNode::NULL_WEIGHTED_NODE)
42 
43 }
44 
45 #endif