|
setStatus(NodeStatus::IDLE); |
Often actionclients can stop at once if they are asked to (like calculating fibonacci numbers).
But somethings it takes time to cleanup (PREEMPTING state). Like writing large files, getting to a safe state.
I would say the NodeStatus should only be idle when the state is PREEMPTED, not PREEMPTING.

source
BehaviorTree.ROS/include/behaviortree_ros/bt_action_node.h
Line 103 in 81f49f0
Often actionclients can stop at once if they are asked to (like calculating fibonacci numbers).
But somethings it takes time to cleanup (PREEMPTING state). Like writing large files, getting to a safe state.
I would say the NodeStatus should only be idle when the state is PREEMPTED, not PREEMPTING.
source