From fdcf0eb0df72b2eb7ae30c08c873b5ab2b855239 Mon Sep 17 00:00:00 2001 From: Wolfgang Hess Date: Mon, 23 Nov 2020 11:02:39 +0100 Subject: [PATCH] Move PoseGraph::GetSubmapData to the PoseGraphInterface. (#1783) Related to #1413. Signed-off-by: Wolfgang Hess --- cartographer/cloud/internal/client/pose_graph_stub.cc | 5 +++++ cartographer/cloud/internal/client/pose_graph_stub.h | 1 + cartographer/mapping/internal/testing/mock_pose_graph.h | 1 + cartographer/mapping/pose_graph.h | 5 ----- cartographer/mapping/pose_graph_interface.h | 5 +++++ 5 files changed, 12 insertions(+), 5 deletions(-) diff --git a/cartographer/cloud/internal/client/pose_graph_stub.cc b/cartographer/cloud/internal/client/pose_graph_stub.cc index f7ff9ad..23cacb2 100644 --- a/cartographer/cloud/internal/client/pose_graph_stub.cc +++ b/cartographer/cloud/internal/client/pose_graph_stub.cc @@ -52,6 +52,11 @@ PoseGraphStub::GetAllSubmapData() const { LOG(FATAL) << "Not implemented"; } +mapping::PoseGraphInterface::SubmapData PoseGraphStub::GetSubmapData( + const mapping::SubmapId& submap_id) const { + LOG(FATAL) << "Not implemented"; +} + mapping::MapById PoseGraphStub::GetAllSubmapPoses() const { google::protobuf::Empty request; diff --git a/cartographer/cloud/internal/client/pose_graph_stub.h b/cartographer/cloud/internal/client/pose_graph_stub.h index b2e6550..bcca67c 100644 --- a/cartographer/cloud/internal/client/pose_graph_stub.h +++ b/cartographer/cloud/internal/client/pose_graph_stub.h @@ -34,6 +34,7 @@ class PoseGraphStub : public ::cartographer::mapping::PoseGraphInterface { void RunFinalOptimization() override; mapping::MapById GetAllSubmapData() const override; + SubmapData GetSubmapData(const mapping::SubmapId& submap_id) const override; mapping::MapById GetAllSubmapPoses() const override; transform::Rigid3d GetLocalToGlobalTransform( diff --git a/cartographer/mapping/internal/testing/mock_pose_graph.h b/cartographer/mapping/internal/testing/mock_pose_graph.h index 074ac09..dbddfd1 100644 --- a/cartographer/mapping/internal/testing/mock_pose_graph.h +++ b/cartographer/mapping/internal/testing/mock_pose_graph.h @@ -34,6 +34,7 @@ class MockPoseGraph : public mapping::PoseGraphInterface { MOCK_METHOD0(RunFinalOptimization, void()); MOCK_CONST_METHOD0(GetAllSubmapData, mapping::MapById()); + MOCK_CONST_METHOD1(GetSubmapData, SubmapData(const SubmapId&)); MOCK_CONST_METHOD0(GetAllSubmapPoses, mapping::MapById()); MOCK_CONST_METHOD1(GetLocalToGlobalTransform, transform::Rigid3d(int)); diff --git a/cartographer/mapping/pose_graph.h b/cartographer/mapping/pose_graph.h index d6597b0..b4dfd3b 100644 --- a/cartographer/mapping/pose_graph.h +++ b/cartographer/mapping/pose_graph.h @@ -112,11 +112,6 @@ class PoseGraph : public PoseGraphInterface { // Gets the current trajectory clusters. virtual std::vector> GetConnectedTrajectories() const = 0; - // Returns the current optimized transform and submap itself for the given - // 'submap_id'. Returns 'nullptr' for the 'submap' member if the submap does - // not exist (anymore). - virtual SubmapData GetSubmapData(const SubmapId& submap_id) const = 0; - proto::PoseGraph ToProto(bool include_unfinished_submaps) const override; // Returns the IMU data. diff --git a/cartographer/mapping/pose_graph_interface.h b/cartographer/mapping/pose_graph_interface.h index 2701e93..68551f1 100644 --- a/cartographer/mapping/pose_graph_interface.h +++ b/cartographer/mapping/pose_graph_interface.h @@ -99,6 +99,11 @@ class PoseGraphInterface { // Returns data for all submaps. virtual MapById GetAllSubmapData() const = 0; + // Returns the current optimized transform and submap itself for the given + // 'submap_id'. Returns 'nullptr' for the 'submap' member if the submap does + // not exist (anymore). + virtual SubmapData GetSubmapData(const SubmapId& submap_id) const = 0; + // Returns the global poses for all submaps. virtual MapById GetAllSubmapPoses() const = 0;