Commit Graph

97 Commits (29875117b373a9cced05618b2d970ad32957ab60)

Author SHA1 Message Date
Alexander Belyaev 29875117b3
Move internal/mapping to mapping/internal. () 2018-02-27 16:25:53 +01:00
Alexander Belyaev 3ebfa757ef
Move mapping_*d to mapping/*d. ()
[Code structure RFC](https://github.com/googlecartographer/rfcs/blob/master/text/0016-code-structure.md)
2018-02-26 17:40:29 +01:00
danielsievers 258aa715ba Move GetTrajectoryData() down to PoseGraphInterface () 2018-02-26 12:45:53 +01:00
gaschler eabcab26ed Expose metrics as http page. ()
RFC=[0014](https://github.com/googlecartographer/rfcs/blob/master/text/0014-monitoring.md)
2018-02-21 18:52:57 +01:00
Alexander Belyaev 7d13383dec
Remove 'mapping_3d' namespace. () ()
Remove 'mapping_3d' namespace. ()

It is removed from everywhere but 'scan_matching', 'pose_graph'
subfolders of 'mapping_3d'.

[Code structure RFC](e11bca586f/text/0000-code-structure.md)
2018-02-21 14:24:12 +01:00
Alexander Belyaev f8dc89d8ff
Remove 'mapping_2d' namespace. ()
It is removed from everywhere but 'scan_matching', 'pose_graph'
subfolders of 'mapping_2d'.

[Code structure RFC](e11bca586f/text/0000-code-structure.md)
2018-02-21 12:41:14 +01:00
Alexander Belyaev c32cb49b01
Fix gRPC loading of pbstreams. () 2018-02-20 16:00:01 +01:00
gaschler a338b2e339 Collect metrics with Prometheus C++ Client ()
RFC=[0014](https://github.com/googlecartographer/rfcs/blob/master/text/0014-monitoring.md)
2018-02-19 18:11:59 +01:00
gaschler 8e27db0f0e Link prometheus client for bazel grpc build ()
RFC=[0014](https://github.com/googlecartographer/rfcs/blob/master/text/0014-monitoring.md)
2018-02-19 11:44:23 +01:00
gaschler 9793542957 Add 3D global SLAM grpc test. () 2018-02-14 12:04:52 +01:00
gaschler 244cf615f5 Make clang compile without warnings. ()
Rule out accidental usage of integer-only ::abs.
Correct static, override and protected annotations.
2018-02-14 11:06:46 +01:00
Christoph Schütte 39f140da66 Follow googlecartographer/cartographer#859 () 2018-02-07 16:35:44 +01:00
Alexander Belyaev 7762087edf Fix some styling issues. () 2018-02-07 10:14:59 +01:00
Alexander Belyaev 58bc1ced68
Implement GetLandmarkPoses method. ()
[RFC=0011](https://github.com/googlecartographer/rfcs/blob/master/text/0011-landmarks.md)
2018-02-06 18:13:31 +01:00
Christoph Schütte 9e977daf1d Remove gRPC compiler invocation from Bazel build () 2018-02-05 16:28:36 +01:00
Christoph Schütte b0945e4a4d Implement AddTrajectoryHandlerTest. () 2018-02-05 14:50:43 +01:00
Juraj Oršulić 9bebeea742 Serialize and deserialize trajectory builder options () 2018-02-05 09:45:43 +01:00
Christoph Schütte 86a8944589 Implement tests for various data adding handlers () 2018-02-02 01:16:14 +01:00
Christoph Schütte 92fa1782f3 Implement RetryStrategies and use for AddTrajectory () 2018-02-01 22:31:33 +01:00
gaschler 9eaf960936 Configure remaining tests in bazel () 2018-02-01 21:58:59 +01:00
Christoph Schütte 302320b1a9 Use framework::Client everywhere. ()
This switches all gRPC method invocation to using framework::Client. After this change we can remove the gRPC proto compiler from the build files.

[RFC=0002](https://github.com/googlecartographer/rfcs/blob/master/text/0002-cloud-based-mapping-1.md)
2018-02-01 17:19:15 +01:00
gaschler 731bc89f22 Move handlers to cc, use MapBuilderContextInterface ()
This is to avoid a circular dependency with LocalTrajectoryUploader and to clean up.
2018-02-01 14:34:41 +01:00
Christoph Schütte 60e9fa59fe
Implement AddImuDataHandlerTest ()
This PR introduces first gRPC handler test that takes advantage of new RpcHandlerTestServer.
2018-02-01 13:05:08 +01:00
Christoph Schütte eb3e63bad6 Implement WriteMapHandler. () 2018-02-01 11:21:50 +01:00
Christoph Schütte 27e8c84f2e Introduce MapBuilderContextInterface () 2018-01-31 19:22:08 +01:00
Christoph Schütte a749d28a67 Introduce framework::Client ()
Introduces a framework::Client class that makes it more convenient to call gRPC methods.

[RFC=0002](https://github.com/googlecartographer/rfcs/blob/master/text/0002-cloud-based-mapping-1.md)
2018-01-31 17:45:57 +01:00
Rodrigo Queiro ad4dc3c4d3 Bazel: build with -Wno-sign-compare ()
This avoids warnings for code like:

```
  CHECK_EQ(local_to_cloud_trajectory_id_map_.count(local_trajectory_id), 0);
```
2018-01-31 15:19:36 +01:00
Christoph Schütte 855743cac4 Check handler signature () 2018-01-31 14:46:59 +01:00
Christoph Schütte 9aecf23a37 Simplify Handler registration. () 2018-01-31 12:26:56 +01:00
gaschler a7ed7e224f Upload LocalSlamResultData ()
[RFC=0002](https://github.com/googlecartographer/rfcs/blob/master/text/0002-cloud-based-mapping-1.md)
PAIR=cschuet
2018-01-29 14:02:33 +01:00
Christoph Schütte 7d2e39af4b gRPC handler testing () 2018-01-29 12:01:17 +01:00
Christoph Schütte 49d89d0759 Move mocks out of client_test.cc into testing/ folder. () 2018-01-26 17:56:36 +01:00
gaschler dab69e0ca0 Struct SensorId ()
* WIP, started unordered_set<SensorId>

* struct SensorId. Works for cartographer without grpc.

* correct test

* SensorId in cartographer_grpc/

* clean up

* try to fix for trusty

* SensorId::operator==

* Ran clang-format.
2018-01-26 15:07:49 +01:00
Alexander Belyaev 1d2613c8e2 Add gRPC version of RunFinalOptimization(). () 2018-01-25 17:31:03 +01:00
Christoph Schütte edb18231b6 Add ProtoStreamWriterInterface and implement forwarding writer. () 2018-01-25 15:27:50 +01:00
Rodrigo Queiro 65889f14a0 Bazel: use cartographer_grpc_server as in CMakeLists.txt () 2018-01-25 13:28:31 +01:00
Alexander Belyaev 37ddf9e550 Add gRPC version of LoadMap(). ()
Later they will be used in map_builder_stub and load_map_handler.
2018-01-25 09:27:42 +01:00
Alexander Belyaev a103e8f93a Implement 'num_trajectory_builders' in map_builder_stub. ()
A huuuuuge PR.
2018-01-25 08:59:52 +01:00
Rodrigo Queiro 52527ec6d4 Add licenses() declarations to BUILD files ()
These were in some, but not all, of the existing BUILD files. They make
it easier to vendor cartographer, as Bazel complains if a BUILD file in
//third_party is missing a licenses() declaration.
2018-01-24 13:16:25 +01:00
Rodrigo Queiro 8e2a017612 Build cartographer_grpc with Bazel ()
This doesn't work when cartographer is an external workspace, due to a
limitation in cc_grpc_library. However, the //cartographer target will
still work it is external, and cartographer_grpc users can vendor the
repository.
2018-01-23 21:29:41 +01:00
Alexander Belyaev 43008d391d
Introduce a ProtoStreamReaderInterface. ()
* Introduce a ProtoStreamReaderInterface.

* Remove the comments from interface def.
2018-01-23 09:09:37 +01:00
Alexander Belyaev 9e30c1e0cd
Send LandmarkData via gRPC. ()
* Send LandmarkData via gRPC.

[RFC PR](https://github.com/googlecartographer/rfcs/pull/18)

* Fix the nits.
2018-01-19 17:24:30 +01:00
Alexander Belyaev 746c9c83c8
Propagate LandmarksData to the PoseGraph. ()
Propagate LandmarkData to the PoseGraph.
2018-01-19 09:41:24 +01:00
gaschler de5937856d Collate_by_trajectory option ()
Adds an option to create a MapBuilder using TrajectoryCollator
(instead of Collator).

[RFC=0008](https://github.com/googlecartographer/rfcs/blob/master/text/0008-collator-interface.md)
2018-01-17 21:15:15 +01:00
Christoph Schütte 35a9c3d63b Implement sensor data uploading in LocalTrajectoryUploader. () 2018-01-17 12:01:29 +01:00
Christoph Schütte 712c7e3e39 Fix namespace of serialization functions. () 2018-01-16 12:20:15 +01:00
Christoph Schütte c053fc7a2f Implement sensor data forwarding. () 2018-01-15 15:31:33 +01:00
Christoph Schütte f49e798ef9 Start DataUploader implementation, implement Add/FinishTrajectory ()
[RFC=0002](https://github.com/googlecartographer/rfcs/blob/master/text/0002-cloud-based-mapping-1.md)
2018-01-12 23:16:29 +01:00
Christoph Schütte 1de696d45f Introduce PoseGraphInterface::ToProto() () 2018-01-12 13:55:14 +01:00
Christoph Schütte fee77c8a99 Add LocalSlamResultData retrieval and submap management ()
[RFC=0002](https://github.com/googlecartographer/rfcs/blob/master/text/0002-cloud-based-mapping-1.md)
2018-01-12 13:00:25 +01:00