map renderer: only log map states once fully loaded (#29722)

only log once fully loaded
pull/25801/head^2
Shane Smiskol 2 years ago committed by GitHub
parent f12a1c2584
commit 6a68944c63
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 4
      selfdrive/navd/map_renderer.cc
  2. 1
      selfdrive/navd/map_renderer.h

@ -64,6 +64,7 @@ MapRenderer::MapRenderer(const QMapboxGLSettings &settings, bool online) : m_set
m_map->setCoordinateZoom(QMapbox::Coordinate(0, 0), DEFAULT_ZOOM); m_map->setCoordinateZoom(QMapbox::Coordinate(0, 0), DEFAULT_ZOOM);
m_map->setStyleJson(style.c_str()); m_map->setStyleJson(style.c_str());
m_map->createRenderer(); m_map->createRenderer();
ever_loaded = false;
m_map->resize(fbo->size()); m_map->resize(fbo->size());
m_map->setFramebufferObject(fbo->handle(), fbo->size()); m_map->setFramebufferObject(fbo->handle(), fbo->size());
@ -72,12 +73,14 @@ MapRenderer::MapRenderer(const QMapboxGLSettings &settings, bool online) : m_set
QObject::connect(m_map.data(), &QMapboxGL::mapChanged, [=](QMapboxGL::MapChange change) { QObject::connect(m_map.data(), &QMapboxGL::mapChanged, [=](QMapboxGL::MapChange change) {
// Ignore expected signals // Ignore expected signals
// https://github.com/mapbox/mapbox-gl-native/blob/cf734a2fec960025350d8de0d01ad38aeae155a0/platform/qt/include/qmapboxgl.hpp#L116 // https://github.com/mapbox/mapbox-gl-native/blob/cf734a2fec960025350d8de0d01ad38aeae155a0/platform/qt/include/qmapboxgl.hpp#L116
if (ever_loaded) {
if (change != QMapboxGL::MapChange::MapChangeRegionWillChange && if (change != QMapboxGL::MapChange::MapChangeRegionWillChange &&
change != QMapboxGL::MapChange::MapChangeRegionDidChange && change != QMapboxGL::MapChange::MapChangeRegionDidChange &&
change != QMapboxGL::MapChange::MapChangeWillStartRenderingFrame && change != QMapboxGL::MapChange::MapChangeWillStartRenderingFrame &&
change != QMapboxGL::MapChange::MapChangeDidFinishRenderingFrameFullyRendered) { change != QMapboxGL::MapChange::MapChangeDidFinishRenderingFrameFullyRendered) {
LOGD("New map state: %d", change); LOGD("New map state: %d", change);
} }
}
}); });
QObject::connect(m_map.data(), &QMapboxGL::mapLoadingFailed, [=](QMapboxGL::MapLoadingFailure err_code, const QString &reason) { QObject::connect(m_map.data(), &QMapboxGL::mapLoadingFailed, [=](QMapboxGL::MapLoadingFailure err_code, const QString &reason) {
@ -188,6 +191,7 @@ void MapRenderer::publish(const double render_time, const bool loaded) {
auto location = (*sm)["liveLocationKalman"].getLiveLocationKalman(); auto location = (*sm)["liveLocationKalman"].getLiveLocationKalman();
bool valid = loaded && (location.getStatus() == cereal::LiveLocationKalman::Status::VALID) && location.getPositionGeodetic().getValid(); bool valid = loaded && (location.getStatus() == cereal::LiveLocationKalman::Status::VALID) && location.getPositionGeodetic().getValid();
ever_loaded = ever_loaded || loaded;
uint64_t ts = nanos_since_boot(); uint64_t ts = nanos_since_boot();
VisionBuf* buf = vipc_server->get_buffer(VisionStreamType::VISION_STREAM_MAP); VisionBuf* buf = vipc_server->get_buffer(VisionStreamType::VISION_STREAM_MAP);
VisionIpcBufExtra extra = { VisionIpcBufExtra extra = {

@ -49,6 +49,7 @@ private:
} }
QTimer* timer; QTimer* timer;
bool ever_loaded = false;
public slots: public slots:
void updatePosition(QMapbox::Coordinate position, float bearing); void updatePosition(QMapbox::Coordinate position, float bearing);

Loading…
Cancel
Save