Skip to content

Commit b0320cd

Browse files
committed
feat(component_interface_tools): componentize node
Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp>
1 parent ea009b8 commit b0320cd

File tree

5 files changed

+17
-14
lines changed

5 files changed

+17
-14
lines changed

common/component_interface_tools/CMakeLists.txt

+10-1
Original file line numberDiff line numberDiff line change
@@ -3,5 +3,14 @@ project(component_interface_tools)
33

44
find_package(autoware_cmake REQUIRED)
55
autoware_package()
6-
ament_auto_add_executable(service_log_checker src/service_log_checker.cpp)
6+
7+
ament_auto_add_library(${PROJECT_NAME} SHARED
8+
src/service_log_checker.cpp
9+
)
10+
11+
rclcpp_components_register_node(${PROJECT_NAME}
12+
PLUGIN "ServiceLogChecker"
13+
EXECUTABLE service_log_checker_node
14+
)
15+
716
ament_auto_package(INSTALL_TO_SHARE launch)
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
<launch>
2-
<node pkg="component_interface_tools" exec="service_log_checker" name="service_log_checker"/>
2+
<node pkg="component_interface_tools" exec="service_log_checker_node"/>
33
</launch>

common/component_interface_tools/package.xml

+1
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
<depend>diagnostic_updater</depend>
1414
<depend>fmt</depend>
1515
<depend>rclcpp</depend>
16+
<depend>rclcpp_components</depend>
1617
<depend>tier4_system_msgs</depend>
1718
<depend>yaml_cpp_vendor</depend>
1819

common/component_interface_tools/src/service_log_checker.cpp

+4-11
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,8 @@
2222
#define FMT_HEADER_ONLY
2323
#include <fmt/format.h>
2424

25-
ServiceLogChecker::ServiceLogChecker() : Node("service_log_checker"), diagnostics_(this)
25+
ServiceLogChecker::ServiceLogChecker(const rclcpp::NodeOptions & options)
26+
: Node("service_log_checker", options), diagnostics_(this)
2627
{
2728
sub_ = create_subscription<ServiceLog>(
2829
"/service_log", 50, std::bind(&ServiceLogChecker::on_service_log, this, std::placeholders::_1));
@@ -98,13 +99,5 @@ void ServiceLogChecker::update_diagnostics(diagnostic_updater::DiagnosticStatusW
9899
}
99100
}
100101

101-
int main(int argc, char ** argv)
102-
{
103-
rclcpp::init(argc, argv);
104-
rclcpp::executors::SingleThreadedExecutor executor;
105-
auto node = std::make_shared<ServiceLogChecker>();
106-
executor.add_node(node);
107-
executor.spin();
108-
executor.remove_node(node);
109-
rclcpp::shutdown();
110-
}
102+
#include <rclcpp_components/register_node_macro.hpp>
103+
RCLCPP_COMPONENTS_REGISTER_NODE(ServiceLogChecker)

common/component_interface_tools/src/service_log_checker.hpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@
2626
class ServiceLogChecker : public rclcpp::Node
2727
{
2828
public:
29-
ServiceLogChecker();
29+
explicit ServiceLogChecker(const rclcpp::NodeOptions & options);
3030

3131
private:
3232
using ServiceLog = tier4_system_msgs::msg::ServiceLog;

0 commit comments

Comments
 (0)