From bc89a4c2f09b600aa675ca9a216fde573edd765f Mon Sep 17 00:00:00 2001 From: Jackie Kay Date: Mon, 20 Jul 2015 10:36:30 -0700 Subject: [PATCH 1/2] change executor impls. to pass memory strategy to parent constructor --- rclcpp/include/rclcpp/executor.hpp | 2 +- rclcpp/include/rclcpp/executors/multi_threaded_executor.hpp | 3 ++- rclcpp/include/rclcpp/executors/single_threaded_executor.hpp | 3 ++- rclcpp/include/rclcpp/strategies/static_memory_strategy.hpp | 1 + 4 files changed, 6 insertions(+), 3 deletions(-) diff --git a/rclcpp/include/rclcpp/executor.hpp b/rclcpp/include/rclcpp/executor.hpp index f6ee2df..edebfeb 100644 --- a/rclcpp/include/rclcpp/executor.hpp +++ b/rclcpp/include/rclcpp/executor.hpp @@ -42,7 +42,7 @@ class Executor public: RCLCPP_MAKE_SHARED_DEFINITIONS(Executor); - Executor(memory_strategy::MemoryStrategy::SharedPtr ms = + explicit Executor(memory_strategy::MemoryStrategy::SharedPtr ms = memory_strategy::create_default_strategy()) : interrupt_guard_condition_(rmw_create_guard_condition()), memory_strategy_(ms) diff --git a/rclcpp/include/rclcpp/executors/multi_threaded_executor.hpp b/rclcpp/include/rclcpp/executors/multi_threaded_executor.hpp index 40f0c5d..b584d61 100644 --- a/rclcpp/include/rclcpp/executors/multi_threaded_executor.hpp +++ b/rclcpp/include/rclcpp/executors/multi_threaded_executor.hpp @@ -40,7 +40,8 @@ class MultiThreadedExecutor : public executor::Executor public: RCLCPP_MAKE_SHARED_DEFINITIONS(MultiThreadedExecutor); - MultiThreadedExecutor() + MultiThreadedExecutor(memory_strategy::MemoryStrategy::SharedPtr ms = + memory_strategy::create_default_strategy()) : executor::Executor(ms) { number_of_threads_ = std::thread::hardware_concurrency(); if (number_of_threads_ == 0) { diff --git a/rclcpp/include/rclcpp/executors/single_threaded_executor.hpp b/rclcpp/include/rclcpp/executors/single_threaded_executor.hpp index fa8e7e0..1f02424 100644 --- a/rclcpp/include/rclcpp/executors/single_threaded_executor.hpp +++ b/rclcpp/include/rclcpp/executors/single_threaded_executor.hpp @@ -41,7 +41,8 @@ class SingleThreadedExecutor : public executor::Executor public: RCLCPP_MAKE_SHARED_DEFINITIONS(SingleThreadedExecutor); - SingleThreadedExecutor() {} + SingleThreadedExecutor(memory_strategy::MemoryStrategy::SharedPtr ms = + memory_strategy::create_default_strategy()) : executor::Executor(ms) { } virtual ~SingleThreadedExecutor() {} diff --git a/rclcpp/include/rclcpp/strategies/static_memory_strategy.hpp b/rclcpp/include/rclcpp/strategies/static_memory_strategy.hpp index 627ab1c..d01f4ee 100644 --- a/rclcpp/include/rclcpp/strategies/static_memory_strategy.hpp +++ b/rclcpp/include/rclcpp/strategies/static_memory_strategy.hpp @@ -55,6 +55,7 @@ public: void ** borrow_handles(HandleType type, size_t number_of_handles) { + std::cout << "static borrow handles" << std::endl; switch (type) { case HandleType::subscriber_handle: if (number_of_handles > max_subscribers_) { From 99c81ce617c55f3012d48c43af672d763cb7e7b5 Mon Sep 17 00:00:00 2001 From: Jackie Kay Date: Mon, 20 Jul 2015 10:45:48 -0700 Subject: [PATCH 2/2] Style --- rclcpp/include/rclcpp/executors/multi_threaded_executor.hpp | 3 ++- rclcpp/include/rclcpp/executors/single_threaded_executor.hpp | 3 ++- rclcpp/include/rclcpp/strategies/static_memory_strategy.hpp | 1 - 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/rclcpp/include/rclcpp/executors/multi_threaded_executor.hpp b/rclcpp/include/rclcpp/executors/multi_threaded_executor.hpp index b584d61..68c6e29 100644 --- a/rclcpp/include/rclcpp/executors/multi_threaded_executor.hpp +++ b/rclcpp/include/rclcpp/executors/multi_threaded_executor.hpp @@ -41,7 +41,8 @@ public: RCLCPP_MAKE_SHARED_DEFINITIONS(MultiThreadedExecutor); MultiThreadedExecutor(memory_strategy::MemoryStrategy::SharedPtr ms = - memory_strategy::create_default_strategy()) : executor::Executor(ms) + memory_strategy::create_default_strategy()) + : executor::Executor(ms) { number_of_threads_ = std::thread::hardware_concurrency(); if (number_of_threads_ == 0) { diff --git a/rclcpp/include/rclcpp/executors/single_threaded_executor.hpp b/rclcpp/include/rclcpp/executors/single_threaded_executor.hpp index 1f02424..2fa1e02 100644 --- a/rclcpp/include/rclcpp/executors/single_threaded_executor.hpp +++ b/rclcpp/include/rclcpp/executors/single_threaded_executor.hpp @@ -42,7 +42,8 @@ public: RCLCPP_MAKE_SHARED_DEFINITIONS(SingleThreadedExecutor); SingleThreadedExecutor(memory_strategy::MemoryStrategy::SharedPtr ms = - memory_strategy::create_default_strategy()) : executor::Executor(ms) { } + memory_strategy::create_default_strategy()) + : executor::Executor(ms) {} virtual ~SingleThreadedExecutor() {} diff --git a/rclcpp/include/rclcpp/strategies/static_memory_strategy.hpp b/rclcpp/include/rclcpp/strategies/static_memory_strategy.hpp index d01f4ee..627ab1c 100644 --- a/rclcpp/include/rclcpp/strategies/static_memory_strategy.hpp +++ b/rclcpp/include/rclcpp/strategies/static_memory_strategy.hpp @@ -55,7 +55,6 @@ public: void ** borrow_handles(HandleType type, size_t number_of_handles) { - std::cout << "static borrow handles" << std::endl; switch (type) { case HandleType::subscriber_handle: if (number_of_handles > max_subscribers_) {