|
| __init__ (self, args=None, **kwargs) |
|
| close (self) |
| Closes database connection, if any, emits metainfo.
|
|
| close_output (self) |
| Closes database connection, if any, executing any pending statements.
|
|
| emit (self, topic, msg, stamp=None, match=None, index=None) |
| Writes message to database.
|
|
| validate (self) |
| Returns whether args.write_options has valid values, if any.
|
|
| __init__ (self, args=None, **kwargs) |
|
| __enter__ (self) |
| Context manager entry.
|
|
| __exit__ (self, exc_type, exc_value, traceback) |
| Context manager exit, closes sink.
|
|
| autodetect (cls, target) |
| Returns true if target is recognizable as output for this sink class.
|
|
| bind (self, source) |
| Attaches source to sink.
|
|
| close (self) |
| Shuts down output, closing any files or connections.
|
|
| configure (self, args=None, **kwargs) |
| Updates sink configuration.
|
|
| emit (self, topic, msg, stamp=None, match=None, index=None) |
| Outputs ROS message.
|
|
| emit_meta (self) |
| Outputs source metainfo like bag header as debug stream, if not already emitted.
|
|
| flush (self) |
| Writes out any pending data to disk.
|
|
| is_highlighting (self) |
| Returns whether this sink requires highlighted matches.
|
|
| thread_excepthook (self, text, exc) |
| Handles exception, used by background threads.
|
|
| validate (self) |
| Returns whether sink prerequisites are met (like ROS environment set if LiveSink).
|
|
| __init__ (self, args=None, **kwargs) |
|
| close (self) |
| Clears data structures.
|
|
| validate (self) |
| Returns whether arguments are valid.
|
|
Base class for writing messages to a database.
Output will have:
- table "topics", with topic and message type names
- table "types", with message type definitions
plus:
- table "pkg/MsgType" for each topic message type, with detailed fields, BYTEA fields for uint8[], array fields for scalar list attributes, and JSONB fields for lists of ROS messages; with foreign keys if nesting else subtype values as JSON dictionaries; plus underscore-prefixed fields for metadata, like
_topic
as the topic name. If not nesting, only topic message type tables are created.
- view "/full/topic/name" for each topic, selecting from the message type table
If a message type table already exists but for a type with a different MD5 hash, the new table will have its MD5 hash appended to end, as "pkg/MsgType (hash)".
Definition at line 43 of file dbbase.py.