From 5d0f04ceed26bf5aec65585c7d7390d00394325c Mon Sep 17 00:00:00 2001 From: Tyler Weaver Date: Mon, 27 Jun 2022 23:05:17 -0600 Subject: [PATCH] API changes in class_loader Signed-off-by: Tyler Weaver --- .../include/rclcpp_components/component_manager.hpp | 2 +- rclcpp_components/src/component_manager.cpp | 2 +- rclcpp_components/src/node_main.cpp.in | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/rclcpp_components/include/rclcpp_components/component_manager.hpp b/rclcpp_components/include/rclcpp_components/component_manager.hpp index 6238284278..62c75ec3be 100644 --- a/rclcpp_components/include/rclcpp_components/component_manager.hpp +++ b/rclcpp_components/include/rclcpp_components/component_manager.hpp @@ -260,7 +260,7 @@ class ComponentManager : public rclcpp::Node std::weak_ptr executor_; uint64_t unique_id_ {1}; - std::map> loaders_; + std::map> loaders_; std::map node_wrappers_; rclcpp::Service::SharedPtr loadNode_srv_; diff --git a/rclcpp_components/src/component_manager.cpp b/rclcpp_components/src/component_manager.cpp index 036350a64f..c6dbbf2417 100644 --- a/rclcpp_components/src/component_manager.cpp +++ b/rclcpp_components/src/component_manager.cpp @@ -113,7 +113,7 @@ ComponentManager::create_component_factory(const ComponentResource & resource) if (loaders_.find(library_path) == loaders_.end()) { RCLCPP_INFO(get_logger(), "Load Library: %s", library_path.c_str()); try { - loaders_[library_path] = std::make_unique(library_path); + loaders_[library_path] = class_loader::ClassLoader::Make(library_path); } catch (const std::exception & ex) { throw ComponentManagerException("Failed to load library: " + std::string(ex.what())); } catch (...) { diff --git a/rclcpp_components/src/node_main.cpp.in b/rclcpp_components/src/node_main.cpp.in index 0ca5eb8c61..98a6941133 100644 --- a/rclcpp_components/src/node_main.cpp.in +++ b/rclcpp_components/src/node_main.cpp.in @@ -30,14 +30,14 @@ int main(int argc, char * argv[]) rclcpp::executors::@executor@ exec; rclcpp::NodeOptions options; options.arguments(args); - std::vector loaders; + std::vector> loaders; std::vector node_wrappers; std::string library_name = "@library_name@"; std::string class_name = "rclcpp_components::NodeFactoryTemplate<@component@>"; RCLCPP_DEBUG(logger, "Load library %s", library_name.c_str()); - auto loader = new class_loader::ClassLoader(library_name); + auto loader = class_loader::ClassLoader::Make(library_name); auto classes = loader->getAvailableClasses(); for (const auto & clazz : classes) { std::string name = clazz.c_str();