Rapp

class rocon_app_manager.rapp.Rapp(rapp_specification)[source]

Got many inspiration and imported from willow_app_manager implementation

install(dependency_checker)[source]

Installs all dependencies of the specified rapp

Parameters:dependency_checker (rocon_app_utilities.rapp_repositories.DependencyChecker) – DependencyChecker object for installation of the rapp dependencies
Returns:A C{tuple} of a flag for the installation success and a string containing the reason of failure
Return type:C{tuple}
is_running()[source]

Is the rapp both launched and currently running?

Actually three possible states 1) not launched 2) running, 3) stopped Could acutally return a tertiary value, but rapp manager doesn’t need to make any decision making about that (for now), so just return running or not.

Used by the rapp_manager.

Returns:True if the rapp is executing or False otherwise.
Return type:Bool
published_interfaces_to_msg_list()[source]

Convert the published interfaces as a rocon_app_manager_msgs.PublishedInterface list.

published_parameters_to_msg_list()[source]

Convert the published parameters as a rocon_std_msgs.KeyValue list.

start(application_namespace, gateway_name, rocon_uri_string, remappings=, []parameters=, []force_screen=False, simulation=False, caps_list=None)[source]

Some important jobs here.

  1. run the rapp launcher under the unique robot name namespace

This guarantees that flipped entities generate unique node id’s that won’t collide when communicating with each other (refer to https://github.com/robotics-in-concert/rocon_multimaster/issues/136).

  1. Apply remapping rules while ignoring the namespace underneath.
Parameters:
  • application_namespace (str) – unique name granted indirectly via the gateways, we namespace everything under this
  • gateway_name (str) – unique name granted to the gateway
  • rocon_uri_string (str - a rocon uri string) – uri of the app manager’s platform (used as a check for compatibility)
  • remapping (list of rocon_std_msgs.msg.Remapping values.) – rules for the app flips.
  • parameters (list of rocon_std_msgs.msg.KeyValue) – requested public_parameters
  • force_screen (boolean) – whether to roslaunch the app with –screen or not
  • simulation (boolean) – whether the rapp manager is for simulated robot or not
  • caps_list (CapsList) – this holds the list of available capabilities, if app needs capabilities
to_msg()[source]

Converts this app definition to ros msg format.

Returns:ros message format of Rapp
Return type:rocon_app_manager_msgs.Rapp
rocon_app_manager.rapp.convert_rapps_from_rapp_specs(rapp_specs)[source]

Converts rocon_app_utilities.Rapp into rocon_app_manager.Rapp

Parameters:rapp_specs ({ancestor_name: rocon_app_utilities.Rapp}) – dict of rapp specification
Returns:runnable rapps
Return type:{ancestor_name:rocon_app_manager.Rapp}

Previous topic

Rapp Manager

This Page