Class MotionPrimitivesForwardController

Inheritance Relationships

Base Type

  • public controller_interface::ControllerInterface

Class Documentation

class MotionPrimitivesForwardController : public controller_interface::ControllerInterface

Public Functions

MotionPrimitivesForwardController()
controller_interface::CallbackReturn on_init() override
controller_interface::InterfaceConfiguration command_interface_configuration() const override
controller_interface::InterfaceConfiguration state_interface_configuration() const override
controller_interface::CallbackReturn on_configure(const rclcpp_lifecycle::State &previous_state) override
controller_interface::CallbackReturn on_activate(const rclcpp_lifecycle::State &previous_state) override
controller_interface::CallbackReturn on_deactivate(const rclcpp_lifecycle::State &previous_state) override
controller_interface::return_type update(const rclcpp::Time &time, const rclcpp::Duration &period) override

Protected Types

using MotionPrimitive = control_msgs::msg::MotionPrimitive
using ExecuteMotionAction = control_msgs::action::ExecuteMotionPrimitiveSequence
using RealtimeGoalHandle = realtime_tools::RealtimeServerGoalHandle<ExecuteMotionAction>

Protected Functions

rclcpp_action::GoalResponse goal_received_callback(const rclcpp_action::GoalUUID &uuid, std::shared_ptr<const ExecuteMotionAction::Goal> goal)
rclcpp_action::CancelResponse goal_cancelled_callback(const std::shared_ptr<rclcpp_action::ServerGoalHandle<ExecuteMotionAction>> goal_handle)
void goal_accepted_callback(std::shared_ptr<rclcpp_action::ServerGoalHandle<ExecuteMotionAction>> goal_handle)
void reset_command_interfaces()
bool set_command_interfaces()

Protected Attributes

std::shared_ptr<motion_primitives_forward_controller::ParamListener> param_listener_
motion_primitives_forward_controller::Params params_
std::string tf_prefix_
realtime_tools::LockFreeSPSCQueue<MotionPrimitive, 1024> moprim_queue_
rclcpp_action::Server<ExecuteMotionAction>::SharedPtr action_server_
realtime_tools::RealtimeThreadSafeBox<std::shared_ptr<RealtimeGoalHandle>> rt_goal_handle_
std::atomic<bool> has_active_goal_ = false
rclcpp::TimerBase::SharedPtr goal_handle_timer_
rclcpp::Duration action_monitor_period_ = rclcpp::Duration(std::chrono::milliseconds(20))
bool print_error_once_ = true
std::atomic<bool> cancel_requested_ = false
std::atomic<bool> robot_stop_requested_ = false
bool was_executing_ = false
ExecutionState execution_status_
ReadyForNewPrimitive ready_for_new_primitive_
MotionPrimitive current_moprim_