15#ifndef CHAINED_FILTER_CONTROLLER__CHAINED_FILTER_HPP_
16#define CHAINED_FILTER_CONTROLLER__CHAINED_FILTER_HPP_
22#include "controller_interface/chainable_controller_interface.hpp"
23#include "filters/filter_chain.hpp"
24#include "rclcpp/rclcpp.hpp"
25#include "rclcpp_lifecycle/state.hpp"
27#include "chained_filter_controller/chained_filter_parameters.hpp"
29namespace chained_filter_controller
35 controller_interface::CallbackReturn
on_init()
override;
41 controller_interface::CallbackReturn on_configure(
42 const rclcpp_lifecycle::State & previous_state)
override;
44 controller_interface::CallbackReturn on_activate(
45 const rclcpp_lifecycle::State & previous_state)
override;
48 const rclcpp::Time & time,
const rclcpp::Duration & period)
override;
62 const rclcpp::Time & time,
const rclcpp::Duration & period)
override;
64 std::shared_ptr<chained_filter::ParamListener> param_listener_;
65 chained_filter::Params params_;
67 std::vector<std::unique_ptr<filters::FilterChain<double>>> filters_;
Definition chained_filter.hpp:33
std::vector< hardware_interface::StateInterface::SharedPtr > on_export_state_interfaces_list() override
Virtual method implemented by chainable controllers to export read-only interfaces.
Definition chained_filter.cpp:145
controller_interface::return_type update_reference_from_subscribers(const rclcpp::Time &time, const rclcpp::Duration &period) override
Update reference from input topics when not in chained mode.
Definition chained_filter.cpp:166
controller_interface::CallbackReturn on_init() override
Extending interface with initialization method which is individual for each controller.
Definition chained_filter.cpp:27
controller_interface::return_type update_and_write_commands(const rclcpp::Time &time, const rclcpp::Duration &period) override
Execute calculations of the controller and update command interfaces.
Definition chained_filter.cpp:120
controller_interface::InterfaceConfiguration command_interface_configuration() const override
Get configuration for controller's required command interfaces.
Definition chained_filter.cpp:41
std::vector< hardware_interface::CommandInterface::SharedPtr > on_export_reference_interfaces_list() override
Virtual method that each chainable controller should implement to export its read/write chainable int...
Definition chained_filter.hpp:54
controller_interface::InterfaceConfiguration state_interface_configuration() const override
Get configuration for controller's required state interfaces.
Definition chained_filter.cpp:46
Virtual class to implement when integrating a controller that can be preceded by other controllers.
Definition chainable_controller_interface.hpp:38
Configuring what command/state interfaces to claim.
Definition controller_interface_base.hpp:72