20#ifndef MAGNETOMETER_BROADCASTER__MAGNETOMETER_BROADCASTER_HPP_
21#define MAGNETOMETER_BROADCASTER__MAGNETOMETER_BROADCASTER_HPP_
25#include <controller_interface/controller_interface.hpp>
26#include <magnetometer_broadcaster/magnetometer_broadcaster_parameters.hpp>
27#include <realtime_tools/realtime_publisher.hpp>
28#include <semantic_components/magnetic_field_sensor.hpp>
29#include <sensor_msgs/msg/magnetic_field.hpp>
31namespace magnetometer_broadcaster
41 controller_interface::CallbackReturn
on_init()
override;
43 controller_interface::CallbackReturn on_configure(
44 const rclcpp_lifecycle::State & previous_state)
override;
46 controller_interface::CallbackReturn on_activate(
47 const rclcpp_lifecycle::State & previous_state)
override;
49 controller_interface::CallbackReturn on_deactivate(
50 const rclcpp_lifecycle::State & previous_state)
override;
52 controller_interface::return_type
update(
53 const rclcpp::Time & time,
const rclcpp::Duration & period)
override;
56 std::shared_ptr<ParamListener> param_listener_;
59 std::unique_ptr<semantic_components::MagneticFieldSensor> magnetometer_;
62 rclcpp::Publisher<sensor_msgs::msg::MagneticField>::SharedPtr sensor_state_publisher_;
63 std::unique_ptr<StatePublisher> realtime_publisher_;
64 sensor_msgs::msg::MagneticField state_message_;
Definition controller_interface.hpp:27
Definition magnetometer_broadcaster.hpp:35
controller_interface::return_type update(const rclcpp::Time &time, const rclcpp::Duration &period) override
Control step update. Command interfaces are updated based on on reference inputs and current states....
Definition magnetometer_broadcaster.cpp:108
controller_interface::InterfaceConfiguration state_interface_configuration() const override
Get configuration for controller's required state interfaces.
Definition magnetometer_broadcaster.cpp:33
controller_interface::InterfaceConfiguration command_interface_configuration() const override
Get configuration for controller's required command interfaces.
Definition magnetometer_broadcaster.cpp:27
controller_interface::CallbackReturn on_init() override
Extending interface with initialization method which is individual for each controller.
Definition magnetometer_broadcaster.cpp:41
Configuring what command/state interfaces to claim.
Definition controller_interface_base.hpp:72