A (partial) list of bug fixed and issues resolved in this release can be found here.
CREATE_DEVICE_LIBRARY_MODULES
option was renamed YARP_COMPILE_DEVICE_PLUGINS
and is now enabled by default.CREATE_OPTIONAL_CARRIERS
option was renamed YARP_COMPILE_CARRIER_PLUGINS
and is now enabled by default.COMPONENTS
in find_package(YARP)
calls. The YARP_LIBRARIES
variable contains only the libraries corresponding to the components requested in the last find_package(YARP)
call. If no components are specified, the OS
, sig
, dev
and math
(only when enabled) components are searched.YARP_INCLUDE_DIRS
variable is deprecated, as it is handled automatically by CMake targets.YARP_MATH_LIBRARY
is deprecated. You can check for YARP_math using find_package(YARP COMPONENTS math)
YARP_WRAP_STL_STRING
and YARP_WRAP_STL_STRING_INLINE
are now always undefined, and they are now considered deprecated.shmem
carrier is no longer builtin inside YARP_OS
and it is now a plugin.Run
class was moved to the new library YARP_run
yarp::os::setprogname()
is now deprecated.yarp::os::getprogname()
is now deprecated.yarp::os::SystemInfo::getProcessInfo()
now returns info for current process when called without arguments.yarp::os::Mutex::tryLock()
and yarp::os::RecursiveMutex::tryLock()
were deprecated in favour of try_lock()
.ConstString
is now deprecated in favour of std::string
.YARP_INT{8,16,32,64}
with std::int{8,16,32,64}_t
from cstdint
cinttypes
instead of YARP_INT64_FMT
yarp::conf::float{32,64,128}_t
(128 only if supported)yarp::conf::ssize_t
YARP_INT{8,16,32,64}
in favour of std::int{8,16,32,64}_t
YARP_FLOAT{32,64}
in favour of yarp::conf::float{32,64}_t
YARP_INT64_FMT
in favour of PRId64
YARP_CONF_SSIZE_T
in favour of yarp::conf::ssize_t
yarp::os::Bottle::addInt{8,16,32,64}()
yarp::os::Bottle::addFloat{32,64}()
yarp::os::Value::{is,as,make}Int{8,16,32,64}()
yarp::os::Value::{is,as,make}Float{32,64}()
yarp::os::ConnectionWriter::appendInt{8,16,32,64}()
yarp::os::ConnectionWriter::appendFloat{32,64}()
yarp::os::ConnectionReader::expectInt{8,16,32,64}()
yarp::os::ConnectionReader::expectFloat{32,64}()
BOTTLE_TAG_INT{8,16,32,64}
(BOTTLE_TAG_INT32
= BOTTLE_TAG_INT
)BOTTLE_TAG_FLOAT{32,64}
(BOTTLE_TAG_FLOAT64
= BOTTLE_TAG_DOUBLE
)int
and double
.yarp::os::Bottle::addInt()
yarp::os::Bottle::addDouble()
yarp::os::Value::isInt()
yarp::os::Value::isDouble()
yarp::os::Value::asInt()
yarp::os::Value::asDouble()
yarp::os::Value::makeInt()
yarp::os::Value::makeDouble()
yarp::os::ConnectionWriter::appendInt()
yarp::os::ConnectionWriter::appendDouble()
yarp::os::ConnectionReader::expectInt()
yarp::os::ConnectionReader::expectDouble()
BOTTLE_TAG_INT
BOTTLE_TAG_DOUBLE
Thread
setOptions()
and setDefaultStackSize()
are now deprecated and no longer doing anything.YARP_STACK_SIZE
environment variable is no longer used.Portable::getType()
became Portable::getType() const
(#1617).PortWriter::getWriteType()
became PortWriter::getWriteType() const
(#1621).PortReader::getReadType()
became PortReader::getReadType() const
(#1616).Companion
has been moved to a dedicated library (#1509). As consequences:Companion
to NetworkBase
: disconnectInput
, poll
, sendMessage
, wait
(wait()
has been split into two new functions waitConnection()
and waitPort()
.Companion::exists()
has been removed unifying its code with NetworkBase::exists()
.readString()
function has been deprecated in NetworkBase
.RateThread
has been deprecated in favour of the new class PeriodicThread
. Note that RateThread
used the period in msec(int), PeriodicThread
requires the period in sec(double), so remember to consider a x1000 factor when migrate the code.const Portable
on a Port
.const Bytes
and const ManagedBytes
can no longer return non-const pointers to the underlying data.serial
device is no longer a plugin, but it is automatically built with YARP_dev
.YARP_dev
and are now plugins:
/yarp/dev/DeviceGroup.h
/yarp/dev/DevicePipe.h
/yarp/dev/IKinectDeviceDriver.h
/yarp/dev/IOpenNI2DeviceDriver.h
/yarp/dev/RemoteFrameGrabber.h
/yarp/dev/ServerFrameGrabber.h
/yarp/dev/ServerSerial.h
/yarp/dev/ServerSoundGrabber.h
/yarp/dev/TestMotor.h
/yarp/dev/RemoteFrameGrabberDC1394.h
/yarp/dev/MultipleAnalogSensorsInterfaces.h
multipleanalogsensorsserver
, multipleanalogsensorsclient
and multipleanalogsensorsremapper
are available for exposing and accessing the multiple analog sensors over a network, and for combining multiple devices in a single device (remapper).TorqueControlImpl
to allow conversion of bemf
, ktau
parameters from metric to machine units.ControlBoardHelper
classes, implementation is now contained in a separate .cpp
file. Removed inline functions.PidEnums.h
setNominalCurrentRaw()
to IAmplifierControl
interface.setTorquePid()
, setPositionMode()
etc, marked as deprecated since 2.3.70ICalibrateControl2
in favour of ICalibrateControl
.ICalibrateControl2Raw
in favour of ICalibrateControlRaw
.IFrameGrabberControl2
in favour of IFrameGrabberControl.
FrameGrabberControl2Impl
in favour of FrameGrabberControlImpl
IControlLimits2
in favour of IControlLimits
.IControlLimits2Raw
in favour of IControlLimitsRaw
.ImplementControlLimits2
in favour of ImplementControlLimits
.IControlMode2
in favour of IControlMode
.IControlMode2Raw
in favour of IControlModeRaw
.ImplementControlMode2
in favour of ImplementControlMode
.IPositionControl2Raw
in favour of IPositionControlRaw
.IPositionControl2
in favour of IPositionControl
.ImplementPositionControl2
in favour of ImplementPositionControl
.IVelocityControl2Raw
in favour of IVelocityControlRaw
.IVelocityControl2
in favour of IVelocityControl
.ImplementVelocityControl2
in favour of ImplementVelocityControl
.IPositionDirectRaw::setPositionsRaw(const int, const int*, double*)
became IPositionDirectRaw::setPositionsRaw(const int, const int*, const double*)
.IPositionDirect::setPositions(const int, const int*, double*)
became IPositionDirect::setPositions(const int, const int*, const double*)
(#1351).yarp/dev/ControlBoardInterfacesImpl.inl
was renamed yarp/dev/ControlBoardInterfacesImpl-inl.h
yarp/sig/IplImage.h
is deprecated, use opencv headers instead.yarp::sig::PointCloud
class. See the documentation for details./yarp/manager/ymm-dir.h
libyarpcxx
was removed.yarp::math::<class>
es have been moved from the yarp::math
to the global namespace.libYARP_math
is now enabled by default if Eigen3
is found.yarp::os::Companion
.CLICOLOR_FORCE=1
environment variable. This is not enabled by default because it is not GUI friendly.OPTION
, DEFAULT
and DOC
options to yarp_begin_plugin_library
. If the option is disabled, all plugins in the bundle are automatically disabled.VERBOSE
and YarpPlugin_VERBOSE
options to yarp_prepare_plugin
SocketTwoWayStream::open()
, in SocketTwoWayStream::flush
is disabled and then re-enabled.ResourceFinder::setDefault()
overloads for int32_t
and float64_t
.yarp::sig::file::[read|write](ImageOf<PixelFloat>&)
services refactored to store data in binary formats.mjpeg
carrier is now compatible also with mono images.yarp_idl_to_dir
and yarp_add_idl
, using the NO_RECURSE
argument.yarp::rosmsg
namespace.yarp/rosmsg
subfolder._indexALL.txt
files are generated only for the requested types.yarpidl_rosmsg
is not built with YARP_NO_DEPRECATED
enabled, but they are considered deprecated.yarp_add_idl
.IMotorEncoders
interface methods can be used to directly monitor the motor shaft position and speed or even to control the motor positions individually when estimating coupled motors friction parameters.yarp::dev::PolyDriver
and the yarp::dev::IMotorEncoders
classes.Int64
value no longer returns true when isInt()
is called.yarpdataplayer
able to deal with ImageOf<PixelFloat>
also with OpenCV.yarpdataplayer
image overlapping.This is a list of people that contributed to this release (generated from the git history using git shortlog -ens --no-merges v2.3.72..v3.0.0
):