A (partial) list of bug fixed and issues resolved in this release can be found here.
portaudio and the ServerSoundGrabber device drivers are deprecated..ini files for plugins configured with yarp_prepare_plugin can now be automatically generated by yarp_add_plugin and installed by passing the YARP_INI DESTINATION argument to yarp_install.CREATE_LIB_MATH CMake option was renamed YARP_COMPILE_libYARP_math.CREATE_GUIS CMake option was renamed YARP_COMPILE_GUIS.CREATE_<UPPERCASE_EXECUTABLE> were renamed YARP_COMPILE_<lowercase-executable>YARP_USE_<UPPERCASEPACKAGENAME> were renamed YARP_USE_<PackageName>YARP_USE_SYSTEM_<UPPERCASEPACKAGENAME> were renamed YARP_USE_SYSTEM_<PackageName>YARP_HAS_OpenCV instead of YARP_HAS_OPENCV)yarp_idl_to_dir signature changed, and now supports passing optional parameters:
The old behaviour is still supported, but deprecated.
yarp_idl_to_dir always regenerates files if they are not available.yarp_idl_to_dir No longer generates build targets.yarp_idl_to_dir are now relative to current directory.yarp/conf/options.h header file is deprecated.const char instead of int as terminating character:ConnectionReader::expectText()ConnectionWriter::appendString()InputStream::readLine()YarpPluginSelector::checkPlugin() static method.ConnectionWriter::appendString() is deprecated in favour of appendText().ConnectionWriter::appendRawString() is deprecated in favour of appendString().ConnectionReader::expectString().initiliizer_list constructor in yarp::os::Property.initiliizer_list constructor in yarp::os::Bottle.yarp::os::NameSpace: All methods in the interface that take ContactStyle as parameter, are now passed by reference instead of by value. *diff *diff *diff *diff *diffImageUtils.h, an header containing the following image utilities:utils::vertSplitutils::horzSplitutils::vertConcatutils::horzConcatyarp::sig::file Added support to write .png filesVectorOf:VectorOf::getFirst() in favour of data() and begin(). Use either data() if you need the pointer to the first element, or begin() if you need the iterator.yarp::sig::IntrinsicParams and yarp::sig::YarpDistortion emum.yarp::sig::PointCloud from depth images:utils::depthToPCutils::depthRgbToPCgetIplImage and wrapIplImage in favour of the new utilities of YARP_cv.yarp::sig::Image.yarp::sig::Sound class was heavily refactored:Sound::audio_sample (short int) *diff *diff *diff *diff *diffunsigned char *getRawData() constsize_t getRawDataSize() constbool operator==(const Sound& alt) constbool clearChannel(size_t channel)Sound extractChannelAsSound(size_t channel_id) conststd::vector<std::reference_wrapper<audio_sample>> getChannel(size_t channel_id)bool replaceChannel(size_t id, Sound channel)std::vector<std::reference_wrapper<audio_sample>> getInterleavedAudioRawData() conststd::vector<std::reference_wrapper<audio_sample>> getNonInterleavedAudioRawData() conststd::string toString() constdouble getDuration() constyarp::dev::IMap2D::clear() method renamed to yarp::dev::IMap2D::clearAllMaps().yarp::dev::INavigation2D derives from INavigation2DControlActions and INavigation2DTargetActions.yarp::dev::INavigation2DControlActions. The following methods have been added: getAllNavigationWaypoints(std::vector<yarp::dev::Map2DLocation>& waypoints) getCurrentNavigationWaypoint(yarp::dev::Map2DLocation& curr_waypoint) getCurrentNavigationMap(yarp::dev::NavigationMapTypeEnum map_type, yarp::dev::MapGrid2D& map)yarp::dev::INavigation2DTargetActions. The following method has been added: gotoTargetByRelativeLocation(double x, double y)yarp::dev::INavigation2DTargetActions::suspendNavigation(const double time_s = std::numeric_limits<double>::infinity())yarp::dev::ILocalization2D added the new two following methods:bool getLocalizationStatus(LocalizationStatusEnum& status)bool getEstimatedPoses(std::vector<yarp::dev::Map2DLocation>& poses)yarp::dev::ILocalization2D added the new type: LocalizationStatusEnumyarp::dev::IBattery::getBatteryStatus() now uses Battery_status enum, instead of int.yarp::dev::INavigation2D. Added method yarp::dev::INavigation2DControlActions::recomputeCurrentNavigationPath().yarp::dev::INavigation2D. Added helper static methods:
yarp::dev::INavigation2D. Added method: yarp::dev::INavigation2D::getNameOfCurrentTarget() to the interface.yarp::dev::INavigation2D. Method: yarp::dev::INavigation2D::gotoTargetByLocationName() now accepts area names.yarp::dev::INavigation2D. Added class yarp::dev::Map2DArea.yarp::dev::INavigation2D. Added methods getArea(), checkInsideArea() and checkNearToLocation().yarp::dev::INavigation2DTargetActions. Added method applyVelocityCommand().yarp::dev::Map2DServer. Changed locations.ini file format to support load/save of Map2DLocation and Map2DArea.AnalogWrapper to open multiple ros topics for wrenchStamped ros msg type.const counterpart of yarp::dev::CanBuffer::getPointer().yarp::dev::IMap2D Added method yarp::dev::IMap2D::renameLocation()yarp::dev::IMap2D Added method yarp::dev::IMap2D::renameArea()yarp::dev::CircularAudioBuffer and yarp::dev::AudioBufferSize classes.bool getPlaybackAudioBufferMaxSize(yarp::dev::AudioBufferSize& size)bool getPlaybackAudioBufferCurrentSize(yarp::dev::AudioBufferSize& size)bool resetPlaybackAudioBuffer()bool getRecordingAudioBufferMaxSize(yarp::dev::AudioBufferSize& size)bool getRecordingAudioBufferCurrentSize(yarp::dev::AudioBufferSize& size)bool resetRecordingAudioBuffer()bool getRecordingAudioBufferMaxSize(yarp::dev::AudioBufferSize& size)bool getRecordingAudioBufferCurrentSize(yarp::dev::AudioBufferSize& size)bool resetRecordingAudioBuffer()YARP_cv, a conversion library from YARP images to cv::Mat and viceversa.fakeBatterynavigation2DServerlocalization2DServerusbCamera (imported from the iCub repository)fakeNavigationfakeLocalizeraudioRecorderWrapperportaudioRecorderportaudioPlayeraudioPlayerWrapperfakeSpeakerfakeMicrophonephysFocalLength parameter for RGBD devices (check documentation for more details).BatteryWrapper--subdevice option.imuBosch_BNO055MultipleAnalogSensor interface support.Navigation2DClient<client_name>/user_commands/rpc.fakeLaseranalogServeranalogSensorClient (#1981).calibrateSensor(const yarp::sig::Vector& value) calls to wrapped subdevices.ServerSoundGrabberIAudioGrabberSound.ServerFrameGrabberRFModules as plugin and load them runtime in a single process context.yarprobotinterfaceyarprobotinterface will not run anymore deprecated DTD format v1.0yarpidl_thriftyarp.api.include and yarp.api.keyword annotations.appendExternalBlock (i.e. yarp::sig::Vector) can now be safely returned by thrift methods.yarphearportaudioPlayer instead of portaudio device.yarpmanagercluster-config.xml file. This allow to use host names that cannot be resolved automatically by the network.yarpviewImplementPositionControl::checkMotionDone now correctly returns a single value as from API (#2027).This is a list of people that contributed to this release (generated from the git history using git shortlog -ens --no-merges v3.1.0..v3.2.0):