|
|
@ -39,6 +39,7 @@ def log_msg(msg, parent_key=''): |
|
|
|
pass # Not a plottable value |
|
|
|
pass # Not a plottable value |
|
|
|
|
|
|
|
|
|
|
|
def createBlueprint(): |
|
|
|
def createBlueprint(): |
|
|
|
|
|
|
|
blueprint = None |
|
|
|
timeSeriesViews = [] |
|
|
|
timeSeriesViews = [] |
|
|
|
for topic in sorted(SERVICE_LIST.keys()): |
|
|
|
for topic in sorted(SERVICE_LIST.keys()): |
|
|
|
timeSeriesViews.append(rrb.TimeSeriesView(name=topic, origin=f"/{topic}/", visible=False)) |
|
|
|
timeSeriesViews.append(rrb.TimeSeriesView(name=topic, origin=f"/{topic}/", visible=False)) |
|
|
@ -51,9 +52,12 @@ def log_thumbnail(thumbnailMsg): |
|
|
|
bytesImgData = thumbnailMsg.get('thumbnail') |
|
|
|
bytesImgData = thumbnailMsg.get('thumbnail') |
|
|
|
rr.log("/thumbnail", rr.ImageEncoded(contents=bytesImgData)) |
|
|
|
rr.log("/thumbnail", rr.ImageEncoded(contents=bytesImgData)) |
|
|
|
|
|
|
|
|
|
|
|
def process(blueprint, lr): |
|
|
|
@rr.shutdown_at_exit |
|
|
|
|
|
|
|
def process(lr): |
|
|
|
|
|
|
|
rr.init("rerun_test") |
|
|
|
|
|
|
|
rr.connect() |
|
|
|
|
|
|
|
|
|
|
|
ret = [] |
|
|
|
ret = [] |
|
|
|
rr.init("rerun_test", spawn=True, default_blueprint=blueprint) |
|
|
|
|
|
|
|
for msg in lr: |
|
|
|
for msg in lr: |
|
|
|
ret.append(msg) |
|
|
|
ret.append(msg) |
|
|
|
rr.set_time_nanos("TIMELINE", msg.logMonoTime) |
|
|
|
rr.set_time_nanos("TIMELINE", msg.logMonoTime) |
|
|
@ -75,8 +79,11 @@ if __name__ == '__main__': |
|
|
|
|
|
|
|
|
|
|
|
args = parser.parse_args() |
|
|
|
args = parser.parse_args() |
|
|
|
|
|
|
|
|
|
|
|
route_or_segment_name = DEMO_ROUTE if args.demo else args.route_or_segment_name.strip() |
|
|
|
|
|
|
|
blueprint = createBlueprint() |
|
|
|
blueprint = createBlueprint() |
|
|
|
|
|
|
|
rr.init("rerun_test", default_blueprint=blueprint) |
|
|
|
|
|
|
|
rr.spawn(connect=False) # child processes stream data to Viewer |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
route_or_segment_name = DEMO_ROUTE if args.demo else args.route_or_segment_name.strip() |
|
|
|
print("Getting route log paths") |
|
|
|
print("Getting route log paths") |
|
|
|
lr = LogReader(route_or_segment_name) |
|
|
|
lr = LogReader(route_or_segment_name) |
|
|
|
lr.run_across_segments(NUM_CPUS, partial(process, blueprint)) |
|
|
|
lr.run_across_segments(NUM_CPUS, partial(process)) |
|
|
|