The interface for sending control setpoints to an Avular robot. More...
#include <creos/setpoint_control_interface.hpp>
Public Member Functions | |
virtual void | publishVelocityCommand (const creos_messages::Twist &cmd_vel)=0 |
Publish a velocity command to the robot. | |
virtual void | setControlSource (const creos_messages::ControlSource &source, int timeout_ms=5000)=0 |
Set the control source of the robot. | |
virtual SubscriptionId | subscribeToCurrentControlSource (const std::function< void(const creos_messages::ControlSource &)> &callback)=0 |
Subscribe to the current control source of the robot. | |
virtual creos_messages::ControlSource | getCurrentControlSource (int timeout_ms=1500)=0 |
Get the current control source of the robot. | |
virtual void | sendCommand (const creos_messages::Command command, int timeout_ms=5000)=0 |
Send a command to the robot to trigger a one-time action. | |
virtual void | sendCommand (const creos_messages::CommandStamped command, int timeout_ms=5000)=0 |
Send a command with timestamp to the robot to trigger a one-time action. | |
virtual void | publishStateReference (const creos_messages::StateReference &state_reference)=0 |
Publish a state reference to the robot. | |
Static Public Attributes | |
static constexpr char | name [] = "setpoint_control" |
static constexpr unsigned | version = 1 |
The interface for sending control setpoints to an Avular robot.
|
pure virtualOriginVertex |
Get the current control source of the robot.
timeout_ms | The timeout in milliseconds. |
creos::UnsupportedError | if the robot does not support getting the control source. |
creos::TimeoutError | if the control source could not be retrieved within the timeout. |
creos::Exception | if any other error occurred while getting the data. |
|
pure virtualVertex |
Publish a state reference to the robot.
state_reference | The state reference to publish. |
creos::UnsupportedError | if the robot does not support state references. |
creos::PublicationError | if an error occurs while publishing the state reference. |
creos::TimeoutError | if the state reference could not be set within the timeout. |
|
pure virtualOrigin |
Publish a velocity command to the robot.
This function will publish a velocity command to the robot.
message | The velocity command to publish. |
creos::UnsupportedError | if the robot does not support sending velocity commands. |
creos::PublicationError | if an error occurs while publishing the velocity command. |
|
pure virtualVertex |
Send a command to the robot to trigger a one-time action.
command | The command to send. |
timeout_ms | The timeout in milliseconds. |
creos::ServiceCallError | if the command is not accepted. |
creos::UnsupportedError | if the robot does not support commands. |
creos::TimeoutError | if the robot does not respond within the timeout. |
|
pure virtualVertex |
Send a command with timestamp to the robot to trigger a one-time action.
command | The command to send with a timestamp. |
timeout_ms | The timeout in milliseconds. |
creos::ServiceCallError | if the command is not accepted. |
creos::UnsupportedError | if the robot does not support commands. |
creos::TimeoutError | if the robot does not respond within the timeout. |
|
pure virtualOrigin |
Set the control source of the robot.
source | The control source to set. |
timeout_ms | The timeout in milliseconds. |
creos::UnsupportedError | if the robot does not support setting the control source. |
creos::PublicationError | if an error occurs while setting the control source. |
creos::TimeoutError | if the control source could not be set within the timeout. |
creos::ServiceCallError | if the control source could not be set. |
|
pure virtualOriginVertex |
Subscribe to the current control source of the robot.
callback | The callback to call when the control source changes. |
creos::UnsupportedError | if the robot does not support getting the control source. |
creos::Exception | if any other error occurred while setting the control source. |