- simplify code around toggling submap visibility
- pass DisplayContext to DrawableSubmap
- add parent scene node for both submap and axes
- remove unnecessary const
Fixes#405.
- Add a variable list object to the submaps plugin, containing visibility
checkboxes for individual submaps. Each DrawableSubmap creates and
manages its visibility property checkbox object. Submaps are hidden by
detaching the Ogre manual object from the Ogre scene node.
- Fetch if the submap version number is different, possibly lower
(meaning Cartographer was restarted)
* Change mutex locker scope in SubmapsDisplay::update()
This avoids the potential unsafe situation where someone (for example,
SubmapsDisplay::Reset()) clears the trajectories vector, but update()
uses it after the mutex has been released, since the scope of the lock
was only in the try block.
Also resolve a miscellaneous signed-unsigned warning.
* Make DrawableSubmap destructor safer
Make the DrawableSubmap destructor wait for the asynchronous fetch
thread to finish - otherwise, it's possible to crash rviz by rapidly
pressing the enable checkbox of the submaps plugin. Eventually the race
condition will be triggered, and the fetch thread will write into a
deleted DrawableSubmap object, which causes a crash.
- 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.