Skip to content

Datastore

The datastore is a persistent key-value database included on each Robot System. All programs can use the following function blocks for CRUD (Create, Read, Update, Delete) operations. See also Datastore for more information about the datastore.

Entries at the Datastore are identified by a combination of group and id. Both together uniquely identify a single entry. Group and id are subject to the following naming regulations:

  • The group must not must not contain spaces.
  • The group must not start or end with /.
  • The id must not be empty.
  • The id must not contain spaces.
  • The id must not start or end with /.

When attemped to create a Datastore entry breaking the naming regulations an INVALID_ID_OR_GROUP exception is raised.

Function Blocks

Datastore - Counter

Increases the value of a datastore integer item and saves it back to the datastore. If the item does not exist yet it will be created with 0.

Name Data type Description
Inputs Datastore ID: Group String The identifying group of the datastore item.
Datastore ID: ID String The identifying id of the datastore item within the group.
Increment Integer The increment to increase the integer value.
Outputs Incremented Value Integer The incremented resulting integer value.
Exceptions CAST_ERROR - The exception is raised, if the datastore value can not be casted to an integer value, e.g. because it is a different datatype.
ACCESS_ERROR - The exception is raised, if the datastore can not be accessed.
INVALID_ID_OR_GROUP - The exception is raised, if the id or group parameter of the Datastore ID is invalid.

Datastore - Check - Boolean

Checks whether multiple datastore boolean items are in a desired state.

Name Data type Description
Inputs Boolean Datastore States List of Datastore Entries List of Boolean Datastore entries, each consisting of a Datastore ID and Value, which are checked all at once.
Datastore ID: Group String The identifying group of the datastore item.
Datastore ID: ID String The identifying id of the datastore item within the group.
Datastore Value Boolean The desired boolean value of the datastore item.
Outputs Result Boolean Returns true, if all requested entries are in the desired state. Returns false otherwise.
Exceptions ID_NOT_FOUND - The exception is raised, if any of the stated datastore entries can not be found.
ACCESS_ERROR - The exception is raised, if the datastore can not be accessed.

Datastore - Delete All Items

Deletes all datastore items.

Name Data type Description
Inputs -
Outputs -
Exceptions ACCESS_ERROR - The exception is raised, if the datastore can not be accessed.

Datastore - Delete Group

Deletes all items of a datastore group.

Name Data type Description
Inputs Namespace String The name of a datastore group whose members will be deleted.
Outputs -
Exceptions NAMESPACE_NOT_FOUND - The exception is raised, if the group does not exist on the datastore.
ACCESS_ERROR - The exception is raised, if the datastore can not be accessed.

Datastore - Delete Item

Deletes a datastore item.

Name Data type Description
Inputs Datastore ID: Group String The identifying group of the datastore item.
Datastore ID: ID String The identifying id of the datastore item within the group.
Outputs -
Exceptions ID_NOT_FOUND - The exception is raised, if the item does not exist on the datastore.
ACCESS_ERROR - The exception is raised, if the datastore can not be accessed.

Datastore - Log All Items

Logs all items of the datastore in the ROS log.

Name Data type Description
Inputs -
Outputs -
Exceptions ACCESS_ERROR - The exception is raised, if the datastore can not be accessed.

Datastore - Get Value - Boolean

Returns the boolean value of a datastore item.

Name Data type Description
Inputs Datastore ID: Group String The identifying group of the datastore item.
Datastore ID: ID String The identifying id of the datastore item within the group.
Outputs Value Boolean The boolean value of the datastore item.
Exceptions ID_NOT_FOUND - The exception is raised, if the item does not exist on the datastore.
CAST_ERROR - The exception is raised, if the datastore value can not be casted to a boolean value, e.g. because it is a different datatype.
ACCESS_ERROR - The exception is raised, if the datastore can not be accessed.

Datastore - Get Value - Float

Returns the float value of a datastore item.

Name Data type Description
Inputs Datastore ID: Group String The identifying group of the datastore item.
Datastore ID: ID String The identifying id of the datastore item within the group.
Outputs Value Float The float value of the datastore item.
Exceptions ID_NOT_FOUND - The exception is raised, if the item does not exist on the datastore.
CAST_ERROR - The exception is raised, if the datastore value can not be casted to a float value, e.g. because it is a different datatype.
ACCESS_ERROR - The exception is raised, if the datastore can not be accessed.

Datastore - Get Value - Integer

Returns the integer value of a datastore item.

Name Data type Description
Inputs Datastore ID: Group String The identifying group of the datastore item.
Datastore ID: ID String The identifying id of the datastore item within the group.
Outputs Value Integer The integer value of the datastore item.
Exceptions ID_NOT_FOUND - The exception is raised, if the item does not exist on the datastore.
CAST_ERROR - The exception is raised, if the datastore value can not be casted to an integer value, e.g. because it is a different datatype.
ACCESS_ERROR - The exception is raised, if the datastore can not be accessed.

Datastore - Get Value - Joints

Returns the 6 axes joints of a datastore item.

Name Data type Description
Inputs Datastore ID: Group String The identifying group of the datastore item.
Datastore ID: ID String The identifying id of the datastore item within the group.
Outputs Value Joints The joint values of the datastore item.
Exceptions ID_NOT_FOUND - The exception is raised, if the item does not exist on the datastore.
INVALID_JOINTS - The exception is raised, if the entry is not a valid joints format for 6 axes.
ACCESS_ERROR - The exception is raised, if the datastore can not be accessed.

Datastore - Get Value - Pose

Returns the pose of a datastore item.

Name Data type Description
Inputs Datastore ID: Group String The identifying group of the datastore item.
Datastore ID: ID String The identifying id of the datastore item within the group.
Outputs Value Pose The pose of the datastore item.
Exceptions ID_NOT_FOUND - The exception is raised, if the item does not exist on the datastore.
INVALID_POSE - The exception is raised, if the entry is not a valid pose format.
ACCESS_ERROR - The exception is raised, if the datastore can not be accessed.

Datastore - Get Value - String

Returns the string value of a datastore item.

Name Data type Description
Inputs Datastore ID: Group String The identifying group of the datastore item.
Datastore ID: ID String The identifying id of the datastore item within the group.
Outputs Value String The string value of the datastore item.
Exceptions ID_NOT_FOUND - The exception is raised, if the item does not exist on the datastore.
ACCESS_ERROR - The exception is raised, if the datastore can not be accessed.

Datastore - Set Value - Boolean

Sets the value of a datastore item. If it does not exist yet it will be created.

Name Data type Description
Inputs Datastore ID: Group String The identifying group of the datastore item.
Datastore ID: ID String The identifying id of the datastore item within the group.
Value Boolean The new boolean value of the datastore item.
Outputs -
Exceptions MISMATCHING_TYPE - The exception is raised, if the datatype of the existing entry does not match the new datatype.
ACCESS_ERROR - The exception is raised, if the datastore can not be accessed.
INVALID_ID_OR_GROUP - The exception is raised, if the id or group parameter of the Datastore ID is invalid.

Datastore - Set Value - Float

Sets the value of a datastore item. If it does not exist yet it will be created.

Name Data type Description
Inputs Datastore ID: Group String The identifying group of the datastore item.
Datastore ID: ID String The identifying id of the datastore item within the group.
Value Float The new float value of the datastore item.
Outputs -
Exceptions MISMATCHING_TYPE - The exception is raised, if the datatype of the existing entry does not match the new datatype.
ACCESS_ERROR - The exception is raised, if the datastore can not be accessed.
INVALID_ID_OR_GROUP - The exception is raised, if the id or group parameter of the Datastore ID is invalid.

Datastore - Set Value - Integer

Sets the value of a datastore item. If it does not exist yet it will be created.

Name Data type Description
Inputs Datastore ID: Group String The identifying group of the datastore item.
Datastore ID: ID String The identifying id of the datastore item within the group.
Value Integer The new integer value of the datastore item.
Outputs -
Exceptions MISMATCHING_TYPE - The exception is raised, if the datatype of the existing entry does not match the new datatype.
ACCESS_ERROR - The exception is raised, if the datastore can not be accessed.
INVALID_ID_OR_GROUP - The exception is raised, if the id or group parameter of the Datastore ID is invalid.

Datastore - Set Value - Joints

Sets the value of a datastore item. If it does not exist yet it will be created.

Name Data type Description
Inputs Datastore ID: Group String The identifying group of the datastore item.
Datastore ID: ID String The identifying id of the datastore item within the group.
Value Joints The new joint values with 6 axes of the datastore item.
Outputs -
Exceptions MISMATCHING_TYPE - The exception is raised, if the datatype of the existing entry does not match the new datatype.
ACCESS_ERROR - The exception is raised, if the datastore can not be accessed.
INVALID_ID_OR_GROUP - The exception is raised, if the id or group parameter of the Datastore ID is invalid.

Datastore - Set Value - Pose

Sets the value of a datastore item. If it does not exist yet it will be created.

Name Data type Description
Inputs Datastore ID: Group String The identifying group of the datastore item.
Datastore ID: ID String The identifying id of the datastore item within the group.
Value Pose The new pose value of the datastore item.
Outputs -
Exceptions MISMATCHING_TYPE - The exception is raised, if the datatype of the existing entry does not match the new datatype.
ACCESS_ERROR - The exception is raised, if the datastore can not be accessed.
INVALID_ID_OR_GROUP - The exception is raised, if the id or group parameter of the Datastore ID is invalid.

Datastore - Set Value - String

Set the value of a datastore item. If it does not exist yet it will be created.

Name Data type Description
Inputs Datastore ID: Group String The identifying group of the datastore item.
Datastore ID: ID String The identifying id of the datastore item within the group.
Value String The new string value of the datastore item.
Outputs -
Exceptions MISMATCHING_TYPE - The exception is raised, if the datatype of the existing entry does not match the new datatype.
ACCESS_ERROR - The exception is raised, if the datastore can not be accessed.
INVALID_ID_OR_GROUP - The exception is raised, if the id or group parameter of the Datastore ID is invalid.

Datastore - Set Type

Sets the datatype of an existing datastore item.

Name Data type Description
Inputs Datastore ID: Group String The identifying group of the datastore item.
Datastore ID: ID String The identifying id of the datastore item within the group.
Type - The new type of the datastore item. Possible values are string, int, float and boolean.
Outputs -
Exceptions ID_NOT_FOUND - The exception is raised, if the item does not exist on the datastore.
ACCESS_ERROR - The exception is raised, if the datastore can not be accessed.

Datastore - Set Display Title

Sets the display title of an existing datastore item.

Name Data type Description
Inputs Datastore ID: Group String The identifying group of the datastore item.
Datastore ID: ID String The identifying id of the datastore item within the group.
Display Title String The new display title of the datastore item.
Outputs -
Exceptions ID_NOT_FOUND - The exception is raised, if the item does not exist on the datastore.
ACCESS_ERROR - The exception is raised, if the datastore can not be accessed.

Datastore - Set Operator Lock

Set the operator_can_edit option of an existing datastore item.

Name Data type Description
Inputs Datastore ID: Group String The identifying group of the datastore item.
Datastore ID: ID String The identifying id of the datastore item within the group.
Operator Can Edit Boolean The operator can /can not edit the datastore entry in the KPI panel of the dashboard in the Operator Cockpit.
Outputs -
Exceptions ID_NOT_FOUND - The exception is raised, if the item does not exist on the datastore.
ACCESS_ERROR - The exception is raised, if the datastore can not be accessed.

Datastore - Change Group

Changes the group of an existing datastore item.

Name Data type Description
Inputs Datastore ID: Group String The identifying group of the datastore item.
Datastore ID: ID String The identifying id of the datastore item within the group.
New Group String The new group for this datastore item.
Outputs -
Exceptions ID_NOT_FOUND - The exception is raised, if the item does not exist on the datastore.
ACCESS_ERROR - The exception is raised, if the datastore can not be accessed.
INVALID_ID_OR_GROUP - The exception is raised, if the new group parameter is invalid.