From e3f5355d62ccfcfe2a1c29c25631988187f5f07e Mon Sep 17 00:00:00 2001 From: Dirk Thomas Date: Mon, 22 Jun 2015 15:41:40 -0700 Subject: [PATCH] add spin_node_once() --- rclcpp/include/rclcpp/executor.hpp | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/rclcpp/include/rclcpp/executor.hpp b/rclcpp/include/rclcpp/executor.hpp index 1b6afe4..1a484b3 100644 --- a/rclcpp/include/rclcpp/executor.hpp +++ b/rclcpp/include/rclcpp/executor.hpp @@ -87,6 +87,17 @@ public: } } + void spin_node_once(rclcpp::node::Node::SharedPtr & node, bool nonblocking = false) + { + this->add_node(node); + // non-blocking = true + std::shared_ptr any_exec = get_next_executable(nonblocking); + if (any_exec) { + execute_any_executable(any_exec); + } + this->remove_node(node); + } + void spin_node_some(rclcpp::node::Node::SharedPtr & node) { this->add_node(node);