From 7909ff37b0cbcae242ac7eaac50fe9ab497a4405 Mon Sep 17 00:00:00 2001 From: Aaron Xiao Date: Thu, 1 Feb 2018 15:55:09 -0800 Subject: [PATCH] Tools: Support map field in diagnostics tool. --- modules/tools/diagnostics/message.py | 11 ++++++++--- modules/tools/diagnostics/meta.data | 5 +++-- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/modules/tools/diagnostics/message.py b/modules/tools/diagnostics/message.py index 7b23d90073..43c99c7103 100644 --- a/modules/tools/diagnostics/message.py +++ b/modules/tools/diagnostics/message.py @@ -43,6 +43,7 @@ from modules.routing.proto import routing_pb2 from modules.drivers.proto import mobileye_pb2 from modules.drivers.proto import delphi_esr_pb2 from modules.drivers.proto import conti_radar_pb2 +from modules.monitor.proto import system_status_pb2 Refreshrate = 16 @@ -233,10 +234,14 @@ class Field(object): if self.descriptor.containing_type is not None and \ self.descriptor.label == self.descriptor.LABEL_REPEATED: if self.index is not None: + if 'keys' in dir(self.item): + # For map field. + key = sorted(self.item.keys())[self.index] + else: + key = self.index self.window.addstr( - 0, 0, self.descriptor.name + ": " + str(self.index), - curses.A_BOLD) - self.print_out(self.item[self.index], self.descriptor, 1, 2) + 0, 0, self.descriptor.name + ": " + str(key), curses.A_BOLD) + self.print_out(self.item[key], self.descriptor, 1, 2) else: self.window.addstr(0, 0, self.descriptor.name + ": Empty", curses.A_BOLD) diff --git a/modules/tools/diagnostics/meta.data b/modules/tools/diagnostics/meta.data index 4488d9f7a8..9841a12aeb 100644 --- a/modules/tools/diagnostics/meta.data +++ b/modules/tools/diagnostics/meta.data @@ -15,5 +15,6 @@ ROUTING_REQ routing_pb2.RoutingRequest() /apollo/routing_request MOBILEYE mobileye_pb2.Mobileye() /apollo/sensor/mobileye 10 DELPHI_ESR delphi_esr_pb2.DelphiESR() /apollo/sensor/delphi_esr 10 CONTI_Radar conti_radar_pb2.ContiRadar() /apollo/sensor/conti_radar 10 -SIGNAL_LIGHT traffic_light_detection_pb2.TrafficLightDetection() /apollo/perception/traffic_light 10 -DRIVE_EVENT drive_event_pb2.DriveEvent() /apollo/drive_event 500 +SIGNAL_LIGHT traffic_light_detection_pb2.TrafficLightDetection() /apollo/perception/traffic_light 10 +DRIVE_EVENT drive_event_pb2.DriveEvent() /apollo/drive_event 500 +SYSTEM_STATUS system_status_pb2.SystemStatus() /apollo/monitor/system_status 500 -- GitLab