Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions nav2_behaviors/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ cmake_minimum_required(VERSION 3.5)
project(nav2_behaviors)

find_package(ament_cmake REQUIRED)
find_package(irobot_events_executor REQUIRED)
find_package(nav2_common REQUIRED)
find_package(rclcpp REQUIRED)
find_package(rclcpp_action REQUIRED)
Expand Down Expand Up @@ -30,6 +31,7 @@ set(executable_name behavior_server)

set(dependencies
rclcpp
irobot_events_executor
rclcpp_action
rclcpp_lifecycle
rclcpp_components
Expand Down
1 change: 1 addition & 0 deletions nav2_behaviors/package.xml
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@
<build_depend>nav2_common</build_depend>

<build_depend>rclcpp</build_depend>
<build_depend>irobot_events_executor</build_depend>
<build_depend>rclcpp_action</build_depend>
<build_depend>rclcpp_lifecycle</build_depend>
<build_depend>nav2_behavior_tree</build_depend>
Expand Down
6 changes: 5 additions & 1 deletion nav2_behaviors/src/main.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -16,14 +16,18 @@
#include <memory>

#include "nav2_behaviors/behavior_server.hpp"
#include "rclcpp/executors/events_executor/events_executor.hpp"
#include "rclcpp/rclcpp.hpp"

int main(int argc, char ** argv)
{
rclcpp::init(argc, argv);
auto recoveries_node = std::make_shared<behavior_server::BehaviorServer>();

rclcpp::spin(recoveries_node->get_node_base_interface());
auto executor = std::make_shared<rclcpp::executors::EventsExecutor>();

executor->add_node(recoveries_node->get_node_base_interface());
executor->spin();
rclcpp::shutdown();

return 0;
Expand Down
2 changes: 2 additions & 0 deletions nav2_controller/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ cmake_minimum_required(VERSION 3.5)
project(nav2_controller)

find_package(ament_cmake REQUIRED)
find_package(irobot_events_executor REQUIRED)
find_package(nav2_core REQUIRED)
find_package(nav2_common REQUIRED)
find_package(angles REQUIRED)
Expand Down Expand Up @@ -36,6 +37,7 @@ add_library(${library_name} SHARED
set(dependencies
angles
rclcpp
irobot_events_executor
rclcpp_action
rclcpp_components
std_msgs
Expand Down
1 change: 1 addition & 0 deletions nav2_controller/package.xml
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
<depend>nav_2d_msgs</depend>
<depend>nav2_core</depend>
<depend>pluginlib</depend>
<build_depend>irobot_events_executor</build_depend>

<test_depend>ament_lint_common</test_depend>
<test_depend>ament_lint_auto</test_depend>
Expand Down
8 changes: 7 additions & 1 deletion nav2_controller/src/main.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -15,13 +15,19 @@
#include <memory>

#include "nav2_controller/controller_server.hpp"

#include "rclcpp/executors/events_executor/events_executor.hpp"
#include "rclcpp/rclcpp.hpp"

int main(int argc, char ** argv)
{
rclcpp::init(argc, argv);
auto node = std::make_shared<nav2_controller::ControllerServer>();
rclcpp::spin(node->get_node_base_interface());

auto executor = std::make_shared<rclcpp::executors::EventsExecutor>();

executor->add_node(node->get_node_base_interface());
executor->spin();
rclcpp::shutdown();

return 0;
Expand Down
2 changes: 2 additions & 0 deletions nav2_costmap_2d/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ cmake_minimum_required(VERSION 3.5)
project(nav2_costmap_2d)

find_package(ament_cmake REQUIRED)
find_package(irobot_events_executor REQUIRED)
find_package(geometry_msgs REQUIRED)
find_package(laser_geometry REQUIRED)
find_package(map_msgs REQUIRED)
Expand Down Expand Up @@ -54,6 +55,7 @@ add_library(nav2_costmap_2d_core SHARED

set(dependencies
geometry_msgs
irobot_events_executor
laser_geometry
map_msgs
message_filters
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,8 @@
#include "tf2/time.h"
#include "tf2/transform_datatypes.h"

#include "rclcpp/executors/events_executor/events_executor.hpp"

#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wpedantic"
#include "tf2/utils.h"
Expand Down Expand Up @@ -313,7 +315,7 @@ class Costmap2DROS : public nav2_util::LifecycleNode

// Dedicated callback group and executor for tf timer_interface and message fillter
rclcpp::CallbackGroup::SharedPtr callback_group_;
rclcpp::executors::SingleThreadedExecutor::SharedPtr executor_;
rclcpp::executors::EventsExecutor::SharedPtr executor_;
std::unique_ptr<nav2_util::NodeThread> executor_thread_;

// Transform listener
Expand Down
1 change: 1 addition & 0 deletions nav2_costmap_2d/package.xml
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,7 @@
<depend>tf2_sensor_msgs</depend>
<depend>visualization_msgs</depend>
<depend>angles</depend>
<depend>irobot_events_executor</depend>

<test_depend>ament_lint_common</test_depend>
<test_depend>ament_lint_auto</test_depend>
Expand Down
2 changes: 1 addition & 1 deletion nav2_costmap_2d/src/costmap_2d_ros.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -202,7 +202,7 @@ Costmap2DROS::on_configure(const rclcpp_lifecycle::State & /*state*/)
// Add cleaning service
clear_costmap_service_ = std::make_unique<ClearCostmapService>(shared_from_this(), *this);

executor_ = std::make_shared<rclcpp::executors::SingleThreadedExecutor>();
executor_ = std::make_shared<rclcpp::executors::EventsExecutor>();
executor_->add_callback_group(callback_group_, get_node_base_interface());
executor_thread_ = std::make_unique<nav2_util::NodeThread>(executor_);
return nav2_util::CallbackReturn::SUCCESS;
Expand Down
2 changes: 2 additions & 0 deletions nav2_lifecycle_manager/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ project(nav2_lifecycle_manager)
find_package(ament_cmake REQUIRED)
find_package(geometry_msgs REQUIRED)
find_package(lifecycle_msgs REQUIRED)
find_package(irobot_events_executor REQUIRED)
find_package(nav2_common REQUIRED)
find_package(nav2_msgs REQUIRED)
find_package(nav2_util REQUIRED)
Expand Down Expand Up @@ -36,6 +37,7 @@ set(dependencies
nav2_msgs
nav2_util
rclcpp
irobot_events_executor
rclcpp_action
rclcpp_lifecycle
rclcpp_components
Expand Down
1 change: 1 addition & 0 deletions nav2_lifecycle_manager/package.xml
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@
<build_depend>bondcpp</build_depend>
<build_depend>nav2_common</build_depend>
<build_depend>diagnostic_updater</build_depend>
<build_depend>irobot_events_executor</build_depend>

<exec_depend>geometry_msgs</exec_depend>
<exec_depend>lifecycle_msgs</exec_depend>
Expand Down
3 changes: 2 additions & 1 deletion nav2_lifecycle_manager/src/lifecycle_manager.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@
#include <string>
#include <vector>

#include "rclcpp/executors/events_executor/events_executor.hpp"
#include "rclcpp/rclcpp.hpp"

using namespace std::chrono_literals;
Expand Down Expand Up @@ -99,7 +100,7 @@ LifecycleManager::LifecycleManager(const rclcpp::NodeOptions & options)
},
callback_group_);
}
auto executor = std::make_shared<rclcpp::executors::SingleThreadedExecutor>();
auto executor = std::make_shared<rclcpp::executors::EventsExecutor>();
executor->add_callback_group(callback_group_, get_node_base_interface());
service_thread_ = std::make_unique<nav2_util::NodeThread>(executor);
});
Expand Down
7 changes: 6 additions & 1 deletion nav2_lifecycle_manager/src/main.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -15,13 +15,18 @@
#include <memory>

#include "nav2_lifecycle_manager/lifecycle_manager.hpp"
#include "rclcpp/executors/events_executor/events_executor.hpp"
#include "rclcpp/rclcpp.hpp"

int main(int argc, char ** argv)
{
rclcpp::init(argc, argv);
auto node = std::make_shared<nav2_lifecycle_manager::LifecycleManager>();
rclcpp::spin(node);

auto executor = std::make_shared<rclcpp::executors::EventsExecutor>();

executor->add_node(node->get_node_base_interface());
executor->spin();
rclcpp::shutdown();

return 0;
Expand Down
2 changes: 2 additions & 0 deletions nav2_planner/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ cmake_minimum_required(VERSION 3.5)
project(nav2_planner)

find_package(ament_cmake REQUIRED)
find_package(irobot_events_executor REQUIRED)
find_package(nav2_common REQUIRED)
find_package(rclcpp REQUIRED)
find_package(rclcpp_action REQUIRED)
Expand Down Expand Up @@ -30,6 +31,7 @@ set(library_name ${executable_name}_core)

set(dependencies
rclcpp
irobot_events_executor
rclcpp_action
rclcpp_lifecycle
rclcpp_components
Expand Down
1 change: 1 addition & 0 deletions nav2_planner/package.xml
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@
<buildtool_depend>ament_cmake</buildtool_depend>

<depend>rclcpp</depend>
<depend>irobot_events_executor</depend>
<depend>rclcpp_action</depend>
<depend>rclcpp_lifecycle</depend>
<depend>visualization_msgs</depend>
Expand Down
9 changes: 8 additions & 1 deletion nav2_planner/src/main.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -16,13 +16,20 @@
#include <memory>

#include "nav2_planner/planner_server.hpp"

#include "rclcpp/executors/events_executor/events_executor.hpp"
#include "rclcpp/rclcpp.hpp"

int main(int argc, char ** argv)
{
rclcpp::init(argc, argv);
auto node = std::make_shared<nav2_planner::PlannerServer>();
rclcpp::spin(node->get_node_base_interface());

auto executor = std::make_shared<rclcpp::executors::EventsExecutor>();

executor->add_node(node->get_node_base_interface());
executor->spin();

rclcpp::shutdown();

return 0;
Expand Down
2 changes: 2 additions & 0 deletions nav2_util/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ cmake_minimum_required(VERSION 3.5)
project(nav2_util)

find_package(ament_cmake REQUIRED)
find_package(irobot_events_executor REQUIRED)
find_package(nav2_common REQUIRED)
find_package(nav2_msgs REQUIRED)
find_package(tf2_ros REQUIRED)
Expand All @@ -21,6 +22,7 @@ find_package(action_msgs REQUIRED)
set(dependencies
nav2_msgs
tf2_ros
irobot_events_executor
tf2
tf2_geometry_msgs
geometry_msgs
Expand Down
3 changes: 2 additions & 1 deletion nav2_util/include/nav2_util/node_thread.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@
#include <memory>

#include "rclcpp/rclcpp.hpp"
#include "rclcpp/executors/events_executor/events_executor.hpp"

namespace nav2_util
{
Expand All @@ -38,7 +39,7 @@ class NodeThread
* @brief A background thread to process executor's callbacks constructor
* @param executor Interface to executor to spin in thread
*/
explicit NodeThread(rclcpp::executors::SingleThreadedExecutor::SharedPtr executor);
explicit NodeThread(rclcpp::executors::EventsExecutor::SharedPtr executor);

/**
* @brief A background thread to process node callbacks constructor
Expand Down
4 changes: 3 additions & 1 deletion nav2_util/include/nav2_util/service_client.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,8 @@

#include <string>


#include "rclcpp/executors/events_executor/events_executor.hpp"
#include "rclcpp/rclcpp.hpp"

namespace nav2_util
Expand Down Expand Up @@ -145,7 +147,7 @@ class ServiceClient
std::string service_name_;
rclcpp::Node::SharedPtr node_;
rclcpp::CallbackGroup::SharedPtr callback_group_;
rclcpp::executors::SingleThreadedExecutor callback_group_executor_;
rclcpp::executors::EventsExecutor callback_group_executor_;
typename rclcpp::Client<ServiceT>::SharedPtr client_;
};

Expand Down
6 changes: 4 additions & 2 deletions nav2_util/include/nav2_util/simple_action_server.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,8 @@
#include <future>
#include <chrono>


#include "rclcpp/executors/events_executor/events_executor.hpp"
#include "rclcpp/rclcpp.hpp"
#include "rclcpp_action/rclcpp_action.hpp"
#include "nav2_util/node_thread.hpp"
Expand Down Expand Up @@ -122,7 +124,7 @@ class SimpleActionServer
options,
callback_group_);
if (spin_thread_) {
executor_ = std::make_shared<rclcpp::executors::SingleThreadedExecutor>();
executor_ = std::make_shared<rclcpp::executors::EventsExecutor>();
executor_->add_callback_group(callback_group_, node_base_interface_);
executor_thread_ = std::make_unique<nav2_util::NodeThread>(executor_);
}
Expand Down Expand Up @@ -521,7 +523,7 @@ class SimpleActionServer
typename rclcpp_action::Server<ActionT>::SharedPtr action_server_;
bool spin_thread_;
rclcpp::CallbackGroup::SharedPtr callback_group_{nullptr};
rclcpp::executors::SingleThreadedExecutor::SharedPtr executor_;
rclcpp::executors::EventsExecutor::SharedPtr executor_;
std::unique_ptr<nav2_util::NodeThread> executor_thread_;

/**
Expand Down
1 change: 1 addition & 0 deletions nav2_util/package.xml
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@
<depend>launch</depend>
<depend>launch_testing_ament_cmake</depend>
<depend>action_msgs</depend>
<depend>irobot_events_executor</depend>

<exec_depend>libboost-program-options</exec_depend>

Expand Down
4 changes: 4 additions & 0 deletions nav2_util/src/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@

find_package(irobot_events_executor REQUIRED)

add_library(${library_name} SHARED
costmap.cpp
node_utils.cpp
Expand All @@ -12,6 +15,7 @@ add_library(${library_name} SHARED

ament_target_dependencies(${library_name}
rclcpp
irobot_events_executor
nav2_msgs
tf2
tf2_ros
Expand Down
4 changes: 2 additions & 2 deletions nav2_util/src/node_thread.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ namespace nav2_util
NodeThread::NodeThread(rclcpp::node_interfaces::NodeBaseInterface::SharedPtr node_base)
: node_(node_base)
{
executor_ = std::make_shared<rclcpp::executors::SingleThreadedExecutor>();
executor_ = std::make_shared<rclcpp::executors::EventsExecutor>();
thread_ = std::make_unique<std::thread>(
[&]()
{
Expand All @@ -32,7 +32,7 @@ NodeThread::NodeThread(rclcpp::node_interfaces::NodeBaseInterface::SharedPtr nod
});
}

NodeThread::NodeThread(rclcpp::executors::SingleThreadedExecutor::SharedPtr executor)
NodeThread::NodeThread(rclcpp::executors::EventsExecutor::SharedPtr executor)
: executor_(executor)
{
thread_ = std::make_unique<std::thread>([&]() {executor_->spin();});
Expand Down