The `io` component of PCL brings in VTK, which in turn creates a lot of CMake pollution (such as bringing in Qt, which is completely unnecessary for `cartographer_ros`).
This will allow us to keep way less information in memory for SLAMing and fixes crashes related to multi trajectory (e.g. this fixes#413).
It also means that to get to an X-Ray or a map, users need to run the asset writer now after SLAMing, which is inconvenient.
Remove dependency on YAML and delete more dead code.
This was implicitly set on <= Ubuntu 16.04 when find_package()-ing
GMock in google_enable_testing(). On 17.04, this doesn't happen, and
Catkin builds a shared library by default. cartographer_ros currently
can't be built as a shared library due to a linking problem (which is
a separate issue - #392). This makes building on 17.04 consistent with
older versions of Ubuntu.
Add support for building libcartographer in the same project
Support adding as a CMake subproject by using the PROJECT_*_DIR variables
instead of the absolute CMAKE_*_DIR variables.
Resolve a signed-unsigned comparison compiler warning
Fix comment typo
FindThreads.cmake (e.g. of trusty) is used which adds the
"-lpthead" dependency that is added to cartographer's
dependencies. Catkin then fails to resolve this in the
cartographer_rosConfig.cmake file it generates to be used
by all dependencies of cartographer_ros.
This means for now, users of cartographer_ros also have to
directly depend on cartographer.
- Move sources from <project>/src into project/project and fix includes.
- Add autogenerated CMakeFiles for ROS projects. The python script is
not yet fully updated to be used for keeping the files updated without
manual intervention though.
- Build everything with -fPIC, so we can create shared libraries.
* Pulls out TfBridge.
* SensorBridge has its own options.
* SensorBridge is now responsible for transforming the sensor data into the tracking frame.
* Constant odometry covariance is no longer optional.
Adds an option publish_occupancy_grid (disabled by default) which continuously
computes and publishes OccupancyGrid in a background thread. Only the 2D case is
currently supported.
And small code style and typo fixes.
Adds an 'expect_odometry_data' option to the configuration. When enabled,
listens to the '/odom' topic, which must provide odometry that is taken
into account for SLAM.
Also renames the 'provide_odom' option to 'provide_odom_frame'.
Configuration of Cartographer's ROS integration is now
entirely handled by Lua. The path and basename of the
configuration are given by command line flags.
The node is listening to default topic names which are
expected to be remapped as needed.
* Add code to allow offline processing of 2D Cartographer bags.
Fixes waiting for transforms to be published, adds support for multi-echo
laser scans, sets default values for the submap topic and query for the
RViz plugin.