LCM log utilities
Project description
lcmlog-py
LCM log utilities
Installation
lcmlog-py
is available on PyPI:
pip install lcmlog-py
Usage
Events
lcmlog-py
provides classes to abstract the LCM log file format. The Event
class represents a single event in the log file. An Event
is composed of a header, channel string, and data byte array.
The Header
class represents a fixed-length header at the beginning of each event which describes the event number, timestamp, and channel/data lengths. This is parsed first, and then the channel and data are read in.
If the header is read incorrectly or is corrupt, a BadSyncError
is raised.
To read a header, call the Header.from_file
method:
from lcmlog import Header
with open('lcmlog', 'rb') as f:
header = Header.from_file(f)
print(header.timestamp) # e.g.
A full event can be read via the Event.from_file
method:
from lcmlog.event import Event
with open('lcmlog', 'rb') as f:
event = Event.from_file(f)
print(event.header.timestamp)
print(event.channel) # e.g.
Log Reader & Writer
lcmlog-py
also provides two utility classes for reading and writing LCM log files in order.
The LogReader
reads events from a file (starting at the beginning) and the LogWriter
writes events to a file. The LogReader
class is iterable. Both classes close their respective files when they are garbage collected.
from lcmlog import LogReader, LogWriter
reader = LogReader('lcmlog_source')
writer = LogWriter('lcmlog_dest')
# Read and write each event
for event in reader:
writer.write(event)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for lcmlog_py-0.1.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2d64d5974516128301919fff9fc995ba715172b2060e7faab7a79834b3a5aded |
|
MD5 | 562c4ef8592ff6f6219d826df51dc21c |
|
BLAKE2b-256 | 40b606d212a03f8b21db9ffcdd7cc9ff950da22e35d644ce6d9a85d5484e2f92 |