A new MIRA release is available.


MIRAenvironment-0.16.1:
- the build system can now handle symlinks to the directories where the build is executed
- drastically reduced time for CMAKEs configure step

MIRABase-0.22.0:
- added methods to gain access to internal data representation in Stamped<>
- added MIRA_ALIGN macro in platform/Align.h for data alignment at memory boundaries
- turned exception into warning if serial port fails to clear special custom baudrate flag
- added new colormaps
- fixed infinite loop in uncompressBuffer() with buffers that contain a single compressed byte of data

MIRAframework-0.21.0:
- unified typed and untyped(void) channels: read/write accessors of untyped
  Channels now allow to access the Stamped header information (timestamp, frameID)
  directly
- adapted Tapes and remote connections to the above changes and reduced
  spatial management overhead in Tapes
- <channel> tag can now be used to specify the typename of the channel
- added PerformanceStatistics class to measure data flow (e.g. throughput in networks)
- TapeRecorder now uses new PerformanceStatistics class
- RemoteModule now measures network in and output of all connections
- added AuthorityManager::getAuthority(id) to gain direct access to an authority pointer
- added Framework::isTerminationRequested method
- FrameworkTransformer: added possibility to save the transform tree in a XML config file
- added methods to obtain channel informations from ChannelReadInterval
- added unsubscribe method for ChannelSynchronizer
- TapeRecorder: does no longer allow to record a single channel multiple times to the same tape
- Tape: fixed repair for compressed channels
- Added option to auto close a Framework when a remote connection is closed or can not be established
- Added Channel::hasPublisher() and Channel::waitForPublisher()
- Authority::resolveName() is now accessible as built-in RPC method
- ChannelSynchronizer: Fixed error in waitForData, added waitForPublisher, Support up to 9 synchronized channels

gui-0.20.0:
- added option to save transform tree and all transforms to TapeRecorderWidget
- adapted to changes in TapeRecorder
- added method to query a recording config containing all settings made by the user
- added output of message recording time to tape player widget
- adapted text visualization to changes in channel API (readJSON)
- 3D view visualization tools are now grouped into categories to optimize screen space.
- CTRL + R now implements a 'reset view' functionality that derived classes can overwrite.
- 3D view and 2D view now implement this reset functionality.
- Added tool support to 2D view (CameraOrbitTool)
- Added view menu to Visualization Views allowing to hide the toolbar
- adapted text visualization to changes in channel API (readJSON)
- Adapted CameraOrbitTool and CameraFlyTool to provide a category for categorization.
- Added tool support to 2D view (CameraOrbitTool)
- ImgWidget now supports colormaps and automatic image scaling
- QtUtils::toQImage now returns the converted QImage by value
- Added tree widget header with additional collapse/expand button
- Added missing files in include/serialization/adapters to binary packages

CommonVisualization-0.14.0:
- adapted to changes in channel API

Localization-0.10.0:
- Adapted LocalizeTool to provide a category for categorization.

Navigation-0.17.0:
- added PathGoalTool to specify path follow tasks
- Adapted PathGoalTool and BasicGoalTool to provide a category for categorization.
- made PathFollowTask consistent with other tasks

PlotVisualization-0.15.0:
- adapted to changes in channel API

miracenter-0.15.1:
- now showing network throughput (in and outgoing) in status bar
- AuthorityView: View shows updates of single Authorities more contemporary
- AuthorityView: now using AuthorityManager::getAuthority in update thread to avoid locking mutex in AuthorityManager for a long time
- adapted to changes in TapeRecorderWidget
- added expand/collapse button to authority view, channel view and property view

mirainspect-0.9.0:
- initial version

miratape-0.14.0:
- adapted to changes in channel API

TapeEditor-0.13.0:
- adapted to changes in channel API

MapBuilder-0.14.0:
- adapted to changes in channel API
- Better boost asio object lifecycle management.
- Removed dependency on the ReferencePoint toolbox, whose functionality is currently not used in SimpleMapper.
- Fixed the bug that you cannot drag a nogo/speed item around when the shape doesn't stay below the cursor.
- Adapted to recent change in serialization which caused frames to reside outside of the data.
- Better boost asio object lifecycle management.
- Removed dependency on the ReferencePoint toolbox, whose functionality is currently not used in SimpleMapper.

Mapping-0.12.1:
- Adapted OccupancyGridVisualization2D to changes in GUIWidgets

Python-0.15.0:
- adapted to changed channel JSON API
- fixed bug in queryServicesForInterface
- added hasPublisher, hasSubscriber and waitForPublisher to channel wrapper
- added bootup, error, warning and ok to unit wrapper

StateMachine-0.12.0:
- made cancel functionality work like described in standard (added sendid to send tag)

Nexus-0.10.0:
- adapted to changed channel JSON API

Poseideon-0.12.1:
- do a deep copy when storing the map in GridMap plugin

OccupancyGridMapper-0.12.1:
- Make a deep copy of the map before publishing it
- Fixed description for member 'ModelProvider'

PathTransformModule-0.13.0:
- Removed dependency on the ReferencePoint toolbox, because the functionality is not needed right now.

Pilot-0.18.0:
- enabled subcellsize goal resolution (tolerance) in PathObjective
- changed cell subsampling merge rule in DynamicRiskMapper, fixes situation where
  temporarily blocked path remains blocked forever (for obstacles at edge of map update range)
- removed CostMapper::process(): checking update interval for each CostMapper
  caused a bug, the process() method is now replaced by the update() method.
- if setting a task to any objective fails the whole task is rejected and Pilot enters an error state
- Pilot publishes dirty regions of the stages as line strip markers for 3d view
- fixed bug when velocity of robot exceeded limits specified in robot model

UEye-0.9.1:
- Made property 'ManualGain' to work properly

LocalizationDataTypes-0.16.0:
- Adapted RecordTemplateTool to provide a category for categorization.

DockingProcess-0.14.0:
- Adapted TeachStationTool to provide a category for categorization.
- Added read-only access method to the base pose of a certain station.
- Added dockOnCustom and dockOffCustom for docking to a station using the recorded template with a custom station position

SCITOS-0.19.3:
- Allow to specify a custom config file and location for a robot

PrimeSense-0.9.2:
- Added default value for member 'Device'

Additional information