openpilot0/tools/lib
Adeeb Shihadeh 605c84634a tools/lib/route: expose raw file paths
old-commit-hash: ee33f8a8cd
2021-11-04 20:32:02 -07:00
..
tests Fix test relying on SAFETY.md being in the root 2021-09-14 16:02:36 -07:00
vidindex
README.md Sphinx docs generation (#22697) 2021-10-28 15:14:37 +02:00
__init__.py
api.py tools: make auth optional for public routes (#22386) 2021-09-30 20:13:46 +02:00
auth.py tools/lib/auth.py: support github/apple login (#22766) 2021-11-01 15:00:00 +01:00
auth_config.py tools: make auth optional for public routes (#22386) 2021-09-30 20:13:46 +02:00
cache.py Less open file permissions (#21922) 2021-08-28 18:25:05 -07:00
exceptions.py
filereader.py
framereader.py Less open file permissions (#21922) 2021-08-28 18:25:05 -07:00
kbhit.py
lazy_property.py
logreader.py
route.py tools/lib/route: expose raw file paths 2021-11-04 20:32:02 -07:00
url_file.py Less open file permissions (#21922) 2021-08-28 18:25:05 -07:00

README.md

LogReader

Route is a class for conviently accessing all the logs from your routes. The LogReader class reads the non-video logs, i.e. rlog.bz2 and qlog.bz2. There's also a matching FrameReader class for reading the videos.

from tools.lib.route import Route
from tools.lib.logreader import LogReader

r = Route("4cf7a6ad03080c90|2021-09-29--13-46-36")

# get a list of paths for the route's rlog files
print(r.log_paths())

# and road camera (fcamera.hevc) files
print(r.camera_paths())

# setup a LogReader to read the route's first rlog
lr = LogReader(r.log_paths()[0])

# print out all the messages in the log
import codecs
codecs.register_error("strict", codecs.backslashreplace_errors)
for msg in lr:
  print(msg)

# setup a LogReader for the route's second qlog
lr = LogReader(r.log_paths()[1])

# print all the steering angles values from the log
for msg in lr:
  if msg.which() == "carState":
    print(msg.carState.steeringAngleDeg)