rqt_topic.workers.topic module

class rqt_topic.workers.topic.TopicWorker(*args: Any, **kwargs: Any)

Bases: QRunnable

Meant to handle all work related to fetching data from a single topic.

Runs in a separate thread than the main GUI to avoid GUI-lock and to update as soon as new data is available.

Each worker has one node with one subscription to completely seperate everything.

extract_array_info(type_str)

Convert a given array or sequence type string into a human readable string.

By doing this we avoid storing large arrays and sequences since this tool is not meant for that (e.g. image data, pointcloud data, etc.)

impl(data)
qos_callback(qos)
recursively_parse_message(msg_content: MsgType, content_type_str: str = '')

Parse a given message into a nested dictionary of its fields.

First call to this function expects a raw rclpy message class that has the get_fields_and_field_types method

run()

Create subscriptin to the specified topic.

Meant to be called in its own seperate thread via QThreadpool.

stop()

Stop and remove the current subscription.

class rqt_topic.workers.topic.TopicWorkerSignals(*args: Any, **kwargs: Any)

Bases: QObject

Plain QObject-derived class to hold the signals used by the QRunnable.

Signals are only supported for QObject-derived objects.

update_message

alias of MessageModel

update_topic

alias of TopicModel