can_print_changes improvements

This commit is contained in:
Adeeb Shihadeh
2022-03-10 14:31:29 -08:00
parent 30ae47de05
commit 1680f1e251
2 changed files with 71 additions and 31 deletions
+12 -1
View File
@@ -5,8 +5,9 @@ import bz2
import urllib.parse
import capnp
from tools.lib.filereader import FileReader
from cereal import log as capnp_log
from tools.lib.filereader import FileReader
from tools.lib.route import Route, SegmentName
# this is an iterator itself, and uses private variables from LogReader
class MultiLogIterator:
@@ -99,6 +100,16 @@ class LogReader:
else:
yield ent
def logreader_from_route_or_segment(r):
sn = SegmentName(r, allow_route_name=True)
route = Route(sn.route_name.canonical_name)
if sn.segment_num < 0:
return MultiLogIterator(route.log_paths())
else:
return LogReader(route.log_paths()[sn.segment_num])
if __name__ == "__main__":
import codecs
# capnproto <= 0.8.0 throws errors converting byte data to string