ros_sugar.launch.system_info

Utilities for building the system info manifest used by the UI visualization.

Module Contents

Functions

is_internal_topic

Check if a topic name is a ROS2 internal/infrastructure topic.

serialize_topics

Serialize a list of Topic objects to compact dicts, filtering out internal topics.

serialize_component

Serialize a single component’s metadata for the UI visualization.

get_condition_parts

Recursively extract structured parts from a Condition tree for UI display.

classify_action

Classify an action and return a compact serializable dict.

serialize_event

Serialize a single event and its associated actions for UI visualization.

serialize_fallbacks

Serialize a component’s fallback configuration for UI visualization.

API

ros_sugar.launch.system_info.is_internal_topic(name: str) bool

Check if a topic name is a ROS2 internal/infrastructure topic.

ros_sugar.launch.system_info.serialize_topics(topics: Optional[Sequence[ros_sugar.io.topic.Topic]]) List[Dict[str, str]]

Serialize a list of Topic objects to compact dicts, filtering out internal topics.

ros_sugar.launch.system_info.serialize_component(component: ros_sugar.core.component.BaseComponent) Dict[str, Any]

Serialize a single component’s metadata for the UI visualization.

ros_sugar.launch.system_info.get_condition_parts(condition: ros_sugar.condition.Condition) List[Dict[str, str]]

Recursively extract structured parts from a Condition tree for UI display.

Returns a flat list of typed parts:

  • {“type”: “topic”, “value”: “topic_name”}

  • {“type”: “attribute”, “value”: “data.field”}

  • {“type”: “operator”, “value”: “greater than”}

  • {“type”: “ref_value”, “value”: “5.0”}

  • {“type”: “logic”, “value”: “AND”}

ros_sugar.launch.system_info.classify_action(action) Dict[str, Any]

Classify an action and return a compact serializable dict.

ros_sugar.launch.system_info.serialize_event(event: ros_sugar.core.event.Event, actions_list: list) Dict[str, Any]

Serialize a single event and its associated actions for UI visualization.

ros_sugar.launch.system_info.serialize_fallbacks(component: ros_sugar.core.component.BaseComponent) Dict[str, Any]

Serialize a component’s fallback configuration for UI visualization.