Skip to content

Commit 2c65ee9

Browse files
authored
feat(automatic_pose_initializer): componentize node (#7021)
Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp>
1 parent ac8d50b commit 2c65ee9

File tree

5 files changed

+14
-14
lines changed

5 files changed

+14
-14
lines changed

system/default_ad_api_helpers/automatic_pose_initializer/CMakeLists.txt

+7-1
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,14 @@ project(automatic_pose_initializer)
44
find_package(autoware_cmake REQUIRED)
55
autoware_package()
66

7-
ament_auto_add_executable(automatic_pose_initializer
7+
ament_auto_add_library(${PROJECT_NAME} SHARED
88
src/automatic_pose_initializer.cpp
99
)
1010

11+
rclcpp_components_register_node(${PROJECT_NAME}
12+
PLUGIN "ServiceLogChecker"
13+
EXECUTABLE ${PROJECT_NAME}_node
14+
EXECUTOR MultiThreadedExecutor
15+
)
16+
1117
ament_auto_package(INSTALL_TO_SHARE launch)
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<launch>
22
<group>
33
<push-ros-namespace namespace="default_ad_api/helpers"/>
4-
<node pkg="automatic_pose_initializer" exec="automatic_pose_initializer" name="automatic_pose_initializer"/>
4+
<node pkg="automatic_pose_initializer" exec="automatic_pose_initializer_node"/>
55
</group>
66
</launch>

system/default_ad_api_helpers/automatic_pose_initializer/package.xml

+1
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
<depend>autoware_adapi_v1_msgs</depend>
1717
<depend>component_interface_utils</depend>
1818
<depend>rclcpp</depend>
19+
<depend>rclcpp_components</depend>
1920

2021
<test_depend>ament_lint_auto</test_depend>
2122
<test_depend>autoware_lint_common</test_depend>

system/default_ad_api_helpers/automatic_pose_initializer/src/automatic_pose_initializer.cpp

+4-11
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,8 @@
1919
namespace automatic_pose_initializer
2020
{
2121

22-
AutomaticPoseInitializer::AutomaticPoseInitializer() : Node("automatic_pose_initializer")
22+
AutomaticPoseInitializer::AutomaticPoseInitializer(const rclcpp::NodeOptions & options)
23+
: Node("automatic_pose_initializer", options)
2324
{
2425
const auto adaptor = component_interface_utils::NodeAdaptor(this);
2526
group_cli_ = create_callback_group(rclcpp::CallbackGroupType::MutuallyExclusive);
@@ -48,13 +49,5 @@ void AutomaticPoseInitializer::on_timer()
4849

4950
} // namespace automatic_pose_initializer
5051

51-
int main(int argc, char ** argv)
52-
{
53-
rclcpp::init(argc, argv);
54-
rclcpp::executors::MultiThreadedExecutor executor;
55-
auto node = std::make_shared<automatic_pose_initializer::AutomaticPoseInitializer>();
56-
executor.add_node(node);
57-
executor.spin();
58-
executor.remove_node(node);
59-
rclcpp::shutdown();
60-
}
52+
#include <rclcpp_components/register_node_macro.hpp>
53+
RCLCPP_COMPONENTS_REGISTER_NODE(automatic_pose_initializer::AutomaticPoseInitializer)

system/default_ad_api_helpers/automatic_pose_initializer/src/automatic_pose_initializer.hpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ namespace automatic_pose_initializer
2525
class AutomaticPoseInitializer : public rclcpp::Node
2626
{
2727
public:
28-
AutomaticPoseInitializer();
28+
explicit AutomaticPoseInitializer(const rclcpp::NodeOptions & options);
2929

3030
private:
3131
void on_timer();

0 commit comments

Comments
 (0)