New versions of iDynTree can change the interface and/or the behaviour of existing classes or functions, for several reasons.
-
The
IVector
,IRawVector
,IMatrix
andIRawMatrix
interfaces have been removed for performance reasons, see robotology#98 (comment) . If you want to write generic code in C++ you can rely on templates, and on Matlab and Python you can rely on the native dynamic type system. -
All the core classes that have a fixed size (
Position
,Rotation
,Transform
,SpatialMotionVector
, etc, etc) are not initialized by their empty constructor for performance reasons, see robotology#98 (comment) . From now on, make sure that initialize them before any use. Most of those classes should have azero()
method to zero its content, or aZero()
static method that return a instance with its content set to zero. For ensuring that no regression happened on the iDynTree codebase, a CMake advanced optionIDYNTREE_RUN_VALGRIND_TESTS
has been added to make that no use of initialized memory occurs.