robokudo.action_servers.action_server_base

Base module for implementing a ros action server.

Classes

ActionServerBase

A base class for ros action servers.

Module Contents

class robokudo.action_servers.action_server_base.ActionServerBase(action, feedback, result, auto_start: bool = True)

A base class for ros action servers.

ros_pkg_name = 'robokudo'
name = 'action_server'
logger = None
_feedback
_result
_action_server
_feedback_msg = None
_result_msg = None
start_server()

Start the ros action server.

_on_receive(goal)

Callback method to receive goals.

Parameters

goal:

goal received from a client

abstract _compute_result(goal) bool

Compute result and send feedback messages if desired.

During computation, regularly call self._check_for_preempt(), set self._feedback_msg, and call self._send_feedback(). Finally, set self._result_msg.

Returns

success: bool

if computation was successful

_check_for_preempt() bool

Check if preempt was requested.

Returns

preempt_requested: bool

if preempt was requested.

_send_feedback()

Send the currently set feedback to the client.