generated from wessel/boilerplate
feat(lifecycle): added core functions with beginner test to lifecycle_manager
This commit is contained in:
@@ -24,6 +24,7 @@ find_package(std_msgs REQUIRED)
|
||||
find_package(sensor_msgs REQUIRED)
|
||||
find_package(rclcpp_lifecycle REQUIRED)
|
||||
find_package(nlohmann_json REQUIRED)
|
||||
find_package(rclcpp_lifecycle REQUIRED)
|
||||
|
||||
add_executable(g2_2025_imu_database_writer_node
|
||||
src/g2_2025_imu_database_writer_node/Main.cpp
|
||||
@@ -44,8 +45,8 @@ target_link_libraries(g2_2025_imu_database_writer_node pqxx pq tomlplusplus::tom
|
||||
|
||||
add_executable(g2_2025_lifecycle_node
|
||||
src/g2_2025_lifecycle_node/main.cpp
|
||||
src/g2_2025_lifecycle_node/nodes/HardwareInterface.cpp
|
||||
src/g2_2025_lifecycle_node/nodes/LifecycleManager.cpp
|
||||
src/g2_2025_lifecycle_node/nodes/hardware_interface.cpp
|
||||
src/g2_2025_lifecycle_node/nodes/lifecycle_manager.cpp
|
||||
src/config/serialib.cpp
|
||||
)
|
||||
|
||||
|
||||
@@ -13,16 +13,43 @@ LifecycleManager::LifecycleManager() : rclcpp_lifecycle::LifecycleNode("lifecycl
|
||||
|
||||
}
|
||||
|
||||
void LifecycleManager::publish_imu_data(const std::string & data) {
|
||||
void LifecycleManager::publish_imu_data(const std::string & data) { // placeholderrrrr
|
||||
auto message = std_msgs::msg::String();
|
||||
message.data = data;
|
||||
imu_publisher->publish(message);
|
||||
RCLCPP_INFO(this->get_logger(), "Published IMU data: %s", data.c_str());
|
||||
}
|
||||
/*
|
||||
|
||||
void LifecycleManager::Unconfigured() {
|
||||
RCLCPP_INFO(this->get_logger(), "Managing lifecycle...");
|
||||
*in terminal commands to manage lifecycle:
|
||||
*ros2 lifecycle list /lifecycle_manager ## for status checking
|
||||
*ros2 lifecycle set /lifecycle_manager configure
|
||||
*ros2 lifecycle set /lifecycle_manager activate
|
||||
*ros2 lifecycle set /lifecycle_manager deactivate
|
||||
*ros2 lifecycle set /lifecycle_manager shutdown
|
||||
*/
|
||||
|
||||
rclcpp_lifecycle::node_interfaces::LifecycleNodeInterface::CallbackReturn
|
||||
LifecycleManager::on_configure(const rclcpp_lifecycle::State&) {
|
||||
RCLCPP_INFO(this->get_logger(), "configuring lifecycle...");
|
||||
return rclcpp_lifecycle::node_interfaces::LifecycleNodeInterface::CallbackReturn::SUCCESS;
|
||||
}
|
||||
|
||||
rclcpp_lifecycle::node_interfaces::LifecycleNodeInterface::CallbackReturn
|
||||
LifecycleManager::on_activate(const rclcpp_lifecycle::State&) {
|
||||
RCLCPP_INFO(this->get_logger(), "activating lifecycle...");
|
||||
return rclcpp_lifecycle::node_interfaces::LifecycleNodeInterface::CallbackReturn::SUCCESS;
|
||||
}
|
||||
|
||||
rclcpp_lifecycle::node_interfaces::LifecycleNodeInterface::CallbackReturn
|
||||
LifecycleManager::on_deactivate(const rclcpp_lifecycle::State&) {
|
||||
RCLCPP_INFO(this->get_logger(), "deactivating lifecycle...");
|
||||
return rclcpp_lifecycle::node_interfaces::LifecycleNodeInterface::CallbackReturn::SUCCESS;
|
||||
}
|
||||
rclcpp_lifecycle::node_interfaces::LifecycleNodeInterface::CallbackReturn
|
||||
LifecycleManager::on_shutdown(const rclcpp_lifecycle::State&) {
|
||||
RCLCPP_INFO(this->get_logger(), "shutting down lifecycle...");
|
||||
return rclcpp_lifecycle::node_interfaces::LifecycleNodeInterface::CallbackReturn::SUCCESS;
|
||||
}
|
||||
|
||||
} // namespace assignments::two::g2_2025_lifecycle_node
|
||||
|
||||
@@ -27,7 +27,10 @@ public:
|
||||
private:
|
||||
rclcpp::Publisher<std_msgs::msg::String>::SharedPtr imu_publisher;
|
||||
void publish_imu_data(const std::string & data);
|
||||
void Unconfigured();
|
||||
|
||||
rclcpp_lifecycle::node_interfaces::LifecycleNodeInterface::CallbackReturn on_configure(const rclcpp_lifecycle::State&);
|
||||
rclcpp_lifecycle::node_interfaces::LifecycleNodeInterface::CallbackReturn on_activate(const rclcpp_lifecycle::State&);
|
||||
rclcpp_lifecycle::node_interfaces::LifecycleNodeInterface::CallbackReturn on_deactivate(const rclcpp_lifecycle::State&);
|
||||
rclcpp_lifecycle::node_interfaces::LifecycleNodeInterface::CallbackReturn on_shutdown(const rclcpp_lifecycle::State&);
|
||||
};
|
||||
} // namespace assignments::two::g2_2025_lifecycle_node
|
||||
|
||||
Reference in New Issue
Block a user