Autoware.Auto
motion::control::controller_common_nodes::ControllerBaseNode Class Reference

#include <controller_base_node.hpp>

Inheritance diagram for motion::control::controller_common_nodes::ControllerBaseNode:
Collaboration diagram for motion::control::controller_common_nodes::ControllerBaseNode:

Public Member Functions

 ControllerBaseNode (const std::string &name, const std::string &ns)
 Parameter file constructor. More...
 
 ControllerBaseNode (const std::string &name, const std::string &ns, const std::string &command_topic, const std::string &state_topic, const std::string &tf_topic, const std::string &trajectory_topic, const std::string &diagnostic_topic, const std::string &static_tf_topic="static_tf")
 Explicit constructor. More...
 
virtual ~ControllerBaseNode () noexcept=default
 

Protected Member Functions

void set_controller (ControllerPtr &&controller) noexcept
 Child class should call this to set the controller. More...
 
virtual void on_bad_trajectory (std::exception_ptr eptr)
 
virtual void on_bad_compute (std::exception_ptr eptr)
 
void publish (const Command &msg)
 Expose publishing in case a child class wants to do something during error handling. More...
 

Constructor & Destructor Documentation

◆ ControllerBaseNode() [1/2]

motion::control::controller_common_nodes::ControllerBaseNode::ControllerBaseNode ( const std::string &  name,
const std::string &  ns 
)

Parameter file constructor.

◆ ControllerBaseNode() [2/2]

motion::control::controller_common_nodes::ControllerBaseNode::ControllerBaseNode ( const std::string &  name,
const std::string &  ns,
const std::string &  command_topic,
const std::string &  state_topic,
const std::string &  tf_topic,
const std::string &  trajectory_topic,
const std::string &  diagnostic_topic,
const std::string &  static_tf_topic = "static_tf" 
)

Explicit constructor.

◆ ~ControllerBaseNode()

virtual motion::control::controller_common_nodes::ControllerBaseNode::~ControllerBaseNode ( )
virtualdefaultnoexcept

Member Function Documentation

◆ on_bad_compute()

void motion::control::controller_common_nodes::ControllerBaseNode::on_bad_compute ( std::exception_ptr  eptr)
protectedvirtual

Handles errors thrown by compute_command_impl(), or std::domain_error due to empty trajectories

◆ on_bad_trajectory()

void motion::control::controller_common_nodes::ControllerBaseNode::on_bad_trajectory ( std::exception_ptr  eptr)
protectedvirtual

Handles errors thrown by either check_new_trajectory(), handle_new_trajectory() or the std::domain_error from set_trajectory()

◆ publish()

void motion::control::controller_common_nodes::ControllerBaseNode::publish ( const Command &  msg)
protected

Expose publishing in case a child class wants to do something during error handling.

◆ set_controller()

void motion::control::controller_common_nodes::ControllerBaseNode::set_controller ( ControllerPtr &&  controller)
protectednoexcept

Child class should call this to set the controller.


The documentation for this class was generated from the following files: