Select

This state allows you to extract a message from one of the managers and save it in the userdata, i.e. making it accessible by all the states. Most of the provided states include this options, but this state can help you if using third-party states.

Outcomes

This state has two outcomes: success (green socket) and failure (red socket). If the configuration of the state is wrong, or that the ROS msg cannot be retrieved, the state will return the outcome failure. Otherwise return success and stores the retrieved message in the userdata.

How to configure

Once dropped in the task editor, you should see three parameters appear in the state:
  • input: Name under which the ROS msg to retrieve has been saved inside the manager.

  • input_type: Type of the manager from which the ROS msg should be retrieved. Please only use the values available in the associated dropdown widget.

  • output: Name you want to give to the extracted message. If left empty, names the retrieved ROS msg with the value of the parameter input. It must be a string.

The ROS msg will be stored in the userdata of the state machine. This means that other states will be able to access its value, if referenced by name.

Example of use

You can find a concrete example of how to use this state, here.