broccoli belstar v2.1.0
Release of Broccoli belstar v2.1.0
New Features
- [io]:
- Added class
Console
for thread-safe and convenient console output with different logging levels -
encoding
: Added convenience methods forstd::string
withencodeToString()
anddecodeFromString()
- Added methods to parse file paths (extract file name and directory)
- Added method to copy files
-
LogFile
: now supports to specify data object instances for writing header and footer (throughsetHeaderData()
andsetFooterData
). This gives more flexibility especially for log data with dynamic-size vectors/matrices (correct column count)
- Added class
- [analysis]:
- New module for analysis methods. Contains now a parallelized task-space evaluator.
- [geometry]:
-
DHParameters
: a new class to assist in converting DH parameters (according to Craig) to/from homogeneous transforms. -
CGMeshFactory
: a new class providing various helpers to create geometric primitives (boxes, spheres, ...) in theCGMesh
format
-
- [memory]:
-
MultiVector
: a new class to represent multi-dimensional arrays (3D voxel grids, etc.) -
MultiLevelGrid
: a new class for multi-dimensional grid data structures with automatic data propagation (e.g. dense binary trees/quadtrees/octrees)
-
- [parallel]:
-
ThreadSafeContainer
: a new class for protecting member data with a mutex (internal or external) for thread-safety
-
Bug Fixes
- [cmake]:
- Instrumentation for coverage was always on, even in release builds. This slows down a lot of things.
- [core/io/parallel]:
- Instances of
core::PlatformHelper
are not static anymore incore::Time
,parallel::BackgroundWorker
andio::serialization
(fixes issue of wrong destruction order for static objects). This seems to have no negative influence on the performance ofcore::Time::currentTime()
(measured on Linux).
- Instances of
- [io]:
- fixed bug in
LogFileBase
(tried to create an empty target directory)
- fixed bug in
Non-Breaking Changes
- [io]:
-
LogFileBase
now inherits fromThreadSafeContainer
-
Console
now uses base functionality ofThreadSafeContainer
-
- [parallel]:
-
BackgroundWorker
now inherits fromThreadSafeContainer
-
- [memory]:
-
CircularBuffer
now inherits fromThreadSafeContainer
-