No version for distro dashing. Known supported distros are highlighted in the buttons above.
No version for distro crystal. Known supported distros are highlighted in the buttons above.
No version for distro bouncy. Known supported distros are highlighted in the buttons above.

Package Summary

Tags No category tags.
Version 1.9.16
License BSD
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/ros/nodelet_core.git
VCS Type git
VCS Version indigo-devel
Last Updated 2019-02-15
Dev Status MAINTAINED
Released RELEASED

Package Description

The nodelet package is designed to provide a way to run multiple algorithms in the same process with zero copy transport between algorithms. This package provides both the nodelet base class needed for implementing a nodelet, as well as the NodeletLoader class used for instantiating nodelets.

Additional Links

Maintainers

  • Mikael Arguedas

Authors

  • Tully Foote
  • Radu Bogdan Rusu
README
No README found. No README in repository either.
CHANGELOG

Changelog for package nodelet

Forthcoming

  • delay processing of queues until Nodelet::onInit() returns

1.9.16 (2018-04-27)

  • uuid dependency fixup (#74)
    • don\'t export uuid library
    • wrap for readability
  • Contributors: Mikael Arguedas

1.9.15 (2018-03-16)

  • use new pluginlib headers (#73)
  • Contributors: Mikael Arguedas

1.9.14 (2017-11-15)

  • declared_nodelets: continue on missing plugin xml (#70)
  • Contributors: Furushchev

1.9.13 (2017-10-27)

  • Drop unneeded forward declaration. (#68)
  • Contributors: Mike Purvis

1.9.12 (2017-08-04)

1.9.11 (2017-07-27)

  • Add getRemappingArgs method to nodelet to reuse it in subclass (#61)
  • remove trailing whitespaces (#62)
  • switch to package format 2 (#63)
  • Show pkg and manifest file with verbose option (#59)
  • Contributors: Kentaro Wada, Mikael Arguedas

1.9.10 (2017-03-27)

1.9.9 (2017-02-17)

  • drop unused dependency on tinyxml (#54)
  • Install the declared_nodelets script (#53)
  • Contributors: Dmitry Rozhkov, Kentaro Wada

1.9.8 (2016-11-15)

  • Fix bond handling during nodelet unloading (#51)

    • add test whether bond breaking on unload works (tests #50)

    * disable callback for broken bond when we are breaking it This avoids the nodelet::LoaderROS::unload() method to be called twice for the same nodelet, causing an error output. * use AsyncSpinner for nodelet load in order for the shutdown procedure to work During shutdown, the bonds still need to communicate their status in order for the nodelet to properly/cleanly/quickly unload. This requires the node to spin. - add test whether LoaderROS::unload() is called twice (tests #50)

  • Contributors: Daniel Seifert

1.9.7 (2016-10-24)

1.9.6 (2016-09-20)

1.9.5 (2016-06-22)

  • more sane debugging messages
  • Contributors: Daniel Stonier

1.9.4 (2016-03-15)

  • update maintainer
  • Contributors: Mikael Arguedas

1.9.3 (2015-08-05)

  • adding support for named nodelet loggers
  • nodelet loader: display error messages from both load attempts on failure
  • Contributors: Max Schwarz, Tully Foote

1.9.2 (2014-10-30)

  • Fix dependency version
  • Contributors: Esteve Fernandez

1.9.1 (2014-10-29)

  • Use FindUUID.cmake from cmake-modules to find the UUID libraries
  • nodelet: Loader: do not call impl->refresh_classes if not available
  • Contributors: Esteve Fernandez, Max Schwarz

1.9.0 (2014-06-16)

  • Fix initialization error handling (#13)
  • Contributors: Esteve Fernandez

1.8.3 (2014-05-08)

  • Add version to pluginlib dependency
  • nodelet: avoid breaking bond when unloading unknown nodelet
  • nodelet: refresh list of available classes if class is not found
  • Fixed missing header
  • Correctly check that there are enough arguments when nodelet is launched with the unload command
  • Exit if Loader::load returns failure in \"standalone\" mode instead of continuing to run
  • Contributors: Dirk Thomas, Esteve Fernandez, Forrest Voight, Gary Servin, Marcus Liebhardt, Mitchell Wills
  • fix missing header (#14)
  • fix check that there are enough arguments when nodelet is launched with the unload command (#12)
  • exit if Loader::load returns failure in \"standalone\" mode instead of continuing to run (#11)

1.8.2 (2014-01-07)

  • fix erasing bond when it breaks (#8)

1.8.0 (2013-07-11)

  • add missing archive/library/runtime destination for library
  • Export pluginlib as a transitive dependency Also remove some old Apple specific rules which are no longer required.
  • use EXPORTED_TARGETS variable instead of explicit target names
  • update email in package.xml

1.7.15 (2013-03-12)

1.7.14 (2013-01-13)

  • add missing link library uuid (fix #4)

1.7.13 (2012-12-27)

  • move nodelet_topic_tools to separate package, fix unit tests

1.7.12 (2012-12-19 01:34)

1.7.11 (2012-12-19 00:58)

1.7.10 (2012-12-14)

  • add missing dep to catkin

1.7.9 (2012-12-13)

  • add missing downstream depend
  • switched from langs to message* packages

1.7.8 (2012-12-06)

  • updated catkin_package(DEPENDS)

1.7.7 (2012-11-01)

1.7.6 (2012-10-30)

  • fix catkin function order
  • clean up package.xml files

1.7.5 (2012-10-23)

1.7.4 (2012-10-08)

1.7.3 (2012-10-04)

1.7.2 (2012-10-03)

1.7.1 (2012-10-02)

  • adding nodelet_core metapackage and reving to 1.7.1

1.7.0 (2012-10-01)

  • fix dependencies
  • make it compile locally
  • first pass at catkinizing the stack
  • updated to latest pluginlib
  • updated usage of pluginlib according to updated REP 121
  • use updated pluginlib to auto-unload libraries when unloading nodelets
  • fixed issue #5144 on OS X lion
  • Commentary on who owns what among Loader, Nodelet, CallbackQueue and CallbackQueueManager.
  • Moved most of Loader\'s member variables into an opaque PIMPL struct so we can change things without breaking ABI.
  • All bond code moved to LoaderROS. Loader no longer needs to know about bond.
  • Removed CallbackQueue::disable(). Loader removes a nodelet\'s queues from the queue manager when unloading it, which is sufficient to prevent new callbacks for that nodelet getting added.
  • Removed some code and comments concerned with callbacks getting called after their nodelet\'s destruction. This can\'t actually happen anymore, since callbacks only fire if they can lock a weak_ptr to their parent nodelet.
  • Refactoring to streamline Nodelet back down to a simple plugin interface. It no longer knows about detail::CallbackQueue[Manager] or Bond; init() simply takes the single- and multi-threaded ros::CallbackQueueInterface* instead (defaulting to NULL). Loader owns the callback queues and bond for each nodelet. This makes it possible to use Nodelet without all the surrounding infrastructure.
  • Take Bond pointers as const-ref instead of value in Loader and Nodelet.
  • Added Loader constructor taking a boost::function object used as a factory for nodelet instances, replacing the default use of a pluginlib class loader. This is to support ROSGUI, which defines its specialized plugin interface as a subclass of Nodelet, and thus needs a different class loader.
  • Removed some debug code in Loader constructor.
  • \'nodelet load\' more reliably unloads the nodelet on exiting. In particular it intercepts XML-RPC shutdown command, used for example by \'rosnode kill\'.
  • Enabled error output when service calls fail abnormally.
  • Rewrote tracked_object logic to be clearer.
  • Have detail::CallbackQueue use a ros::VoidConstWPtr as the tracked object, which is now optional. More generic, and fixes test_nodelet which was broken by the last commit.
  • Fixed race conditions/deadlocks when unloading a nodelet. Now disable the nodelet\'s callback queues before deleting it. The queues have a WPtr to the nodelet, so any outstanding callbacks will get discarded.
  • ~Loader now stops callback manager threads before destroying the nodelets. Otherwise the worker threads could operate on nodelet data as/after it\'s destroyed.
  • Use ros::names::parentNamespace().
  • Cleaned scoped_ptr\'s out of ThreadInfo and updated its padding.
  • Made ThreadInfo::calling an atomic_count. This allows the manager thread to pick the queue with least work more accurately, and reduces contention b/c getSmallestQueue no longer needs to lock on queue_mutex_.
  • Minor code cleanup and finer locking in managerThread().
  • Actually pad ThreadInfo to a multiple of 64 bytes. Previous expression was wrongly wrapped in sizeof().
  • Instead of thread_info_.resize(num_threads), push each ThreadInfo on individually. With resize(), all threads ended up sharing the same queue_mutex and queue_cond. Doesn\'t seem to be much of a performance win though.
  • Added test instrumentation to CallbackQueueManager to track size of worker thread queues over time. Must be enabled at compilation time with -DNODELET_QUEUE_DEBUG.
  • nodelet patches for osx lion support from wjwwood
  • Added --no-bond option to nodelet loading to disable bonds.
  • updated platform tags
  • don\'t need to link against tinyxml directly
  • link against system tinyxml
  • Fix for #4855 This fix actually makes sense, but that it wasn\'t caught earlier doesn\'t. The construction of nodelet::Loader n(false) was creating the first node handle and letting it go out of scope, which was automagically calling ros::shutdown(), which is a dumb thing for ros::NodeHandle to do automagically on destruction.
  • Each nodelet now places its bonds on a custom callback queue
  • a script to list declared nodelets
  • real fix for #4460
  • patch for #4460
  • adding support for once, throttle, and filter features. With unit tests for all but the filters #4681
  • fix for #4609
  • MUX simplified by using a 8-connected null filters DeMUX has a specialization for message type (uses ros::Subscriber internally by default) Added rosdep for nodelet (uuid)
  • adding optional namespace aware constructor to nodelet loader. #4243 and fixing vestigial comments referencing Filters #4221
  • nodelet uses bond to handle crashes on the manager or the spawner end. #4221
  • locking in all cases
  • fix hang on CallbackQueueManager destruction (#4402)
  • better check for services
  • fix hanging tests and a hang on nodelet CallbackQueueManager destruction (#4082)
  • added a boost mutex
  • preventing nodelets from busywaiting
  • Added optional parameter num_worker_threads to nodelets.
  • Added Ubuntu platform tags to manifest
  • implemented nodelet unloading on shutdown
  • fixed a segfault on destroy
  • merging josh\'s branch from ticket #3875
  • adding usage
  • fancy new command line parsing for nodelets #3876
  • moving topic tools out of nodelet proper, removing rospy and message_filters dependencies from nodelet
  • doc updates
  • fixed a segfault
  • small changes (ptr->boost shared_ptr)
  • init guard
  • making nodehandles pointers to avoid default constructors
  • switching mt_spinner to be a pointer created on init so it\'s not trying to create a nodehandle at construction
  • cleanup
  • switching to cpp command based nodelet implementation as per API review
  • changes as per API review
  • enforcing unique name in manager
  • supporting argv passing on server side
  • getname return type for API review
  • adding MT Nodehandle creation methods and fixing up tutorials
  • passing parameters
  • we\'re always going to spin
  • added my_args in the service call
  • some changes as we discuss them during the API review
  • cleaning up private and public api elements
  • nodelet_internal_init is now private and a friend of NodeletLoader
  • nodelet API changes
  • COND rosconsole Nodelet wrappers working
  • adding multithreaded callback queue
  • removing unnecessary code after refactor
  • adding NODELET rosconsole wrappers, note init method is now void args
  • moving nodelet package into common trunk so I don\'t lose it in reorganization

Wiki Tutorials

See ROS Wiki Tutorials for more details.

Source Tutorials

Not currently indexed.

Dependant Packages

Name Repo Deps
avt_vimba_camera github-astuff-avt_vimba_camera
camera1394stereo github-srv-camera1394stereo
uvc_camera github-ros-drivers-camera_umd
capabilities github-osrf-capabilities
laser_scan_densifier github-ipa320-cob_driver
cob_cam3d_throttle github-ipa320-cob_perception_common
cob_image_flip github-ipa320-cob_perception_common
nodelet_tutorial_math github-ros-common_tutorials
cv_camera github-OTL-cv_camera
depthimage_to_laserscan github-ros-perception-depthimage_to_laserscan
gazebo_plugins github-ros-simulation-gazebo_ros_pkgs
gscam github-ros-drivers-gscam
hector_elevation_mapping github-tu-darmstadt-ros-pkg-hector_navigation
depth_image_proc github-ros-perception-image_pipeline
image_proc github-ros-perception-image_pipeline
image_publisher github-ros-perception-image_pipeline
image_rotate github-ros-perception-image_pipeline
image_view github-ros-perception-image_pipeline
stereo_image_proc github-ros-perception-image_pipeline
imu_transformer github-ros-perception-imu_pipeline
imu_filter_madgwick github-ccny-ros-pkg-imu_tools
industrial_extrinsic_cal github-ros-industrial-industrial_calibration
intrinsic_cal github-ros-industrial-industrial_calibration
rgbd_depth_correction github-ros-industrial-industrial_calibration
target_finder github-ros-industrial-industrial_calibration
jsk_data github-jsk-ros-pkg-jsk_common
jsk_topic_tools github-jsk-ros-pkg-jsk_common
imagesift github-jsk-ros-pkg-jsk_recognition
jsk_pcl_ros github-jsk-ros-pkg-jsk_recognition
jsk_pcl_ros_utils github-jsk-ros-pkg-jsk_recognition
jsk_perception github-jsk-ros-pkg-jsk_recognition
resized_image_transport github-jsk-ros-pkg-jsk_recognition
kobuki_auto_docking github-yujinrobot-kobuki
kobuki_bumper2pc github-yujinrobot-kobuki
kobuki_capabilities github-yujinrobot-kobuki
kobuki_controller_tutorial github-yujinrobot-kobuki
kobuki_node github-yujinrobot-kobuki
kobuki_random_walker github-yujinrobot-kobuki
kobuki_rapps github-yujinrobot-kobuki
kobuki_safety_controller github-yujinrobot-kobuki
laser_proc github-ros-perception-laser_proc
libuvc_camera github-ros-drivers-libuvc_ros
nodelet_core github-ros-nodelet_core
nodelet_topic_tools github-ros-nodelet_core
test_nodelet github-ros-nodelet_core
test_nodelet_topic_tools github-ros-nodelet_core
octomap_server github-OctoMap-octomap_mapping
openni2_camera github-ros-drivers-openni2_camera
openni2_launch github-ros-drivers-openni2_camera
openni_camera github-ros-drivers-openni_camera
openni_launch github-ros-drivers-openni_camera
pcl_ros github-ros-perception-perception_pcl
phidgets_high_speed_encoder github-ros-drivers-phidgets_drivers
phidgets_ik github-ros-drivers-phidgets_drivers
phidgets_imu github-ros-drivers-phidgets_drivers
prosilica_camera github-ros-drivers-prosilica_driver
rgbd_launch github-ros-drivers-rgbd_launch
robot_localization github-cra-ros-pkg-robot_localization
rqt_gui_cpp github-ros-visualization-rqt
rtabmap_ros github-introlab-rtabmap_ros
segbot_sensors github-utexas-bwi-segbot
gmapping github-ros-perception-slam_gmapping
urg_node github-ros-drivers-urg_node
velodyne_driver github-ros-drivers-velodyne
velodyne_laserscan github-ros-drivers-velodyne
velodyne_pointcloud github-ros-drivers-velodyne
video_stream_opencv github-ros-drivers-video_stream_opencv
visp_tracker github-lagadic-vision_visp
yocs_cmd_vel_mux github-yujinrobot-yujin_ocs
yocs_diff_drive_pose_controller github-yujinrobot-yujin_ocs
yocs_safety_controller github-yujinrobot-yujin_ocs
yocs_velocity_smoother github-yujinrobot-yujin_ocs
bta_tof_driver github-voxel-dot-at-bta_tof_driver
dataspeed_ulc_can bitbucket-DataspeedInc-dataspeed_ulc_ros
fetch_gazebo github-fetchrobotics-fetch_gazebo
flir_boson_usb github-astuff-flir_boson_usb
swri_image_util github-swri-robotics-marti_common
swri_nodelet github-swri-robotics-marti_common
swri_transform_util github-swri-robotics-marti_common
novatel_gps_driver github-swri-robotics-novatel_gps_driver
opencv_apps github-ros-perception-opencv_apps
pointcloud_to_laserscan github-ros-perception-pointcloud_to_laserscan
rc_visard_driver github-roboception-rc_visard_ros
webrtc_ros github-RobotWebTools-webrtc_ros
ensenso_camera github-ensenso-ros_driver
nerian_stereo github-nerian-vision-nerian_stereo
omronsentech_camera github-ose-support-ros-omronsentech_camera
rslidar_driver github-CPFL-robosense
rslidar_pointcloud github-CPFL-robosense
tuw_ellipses github-tuw-robotics-tuw_marker_detection
tuw_multi_robot_ctrl github-tuw-robotics-tuw_multi_robot
usb_cam_hardware github-yoshito-n-students-usb_cam_hardware
xiaoqiang_depth_image_proc github-bluewhalerobot-xiaoqiang
xiaoqiang_freenect_camera github-bluewhalerobot-xiaoqiang
xiaoqiang_freenect_launch github-bluewhalerobot-xiaoqiang
zivid_camera github-zivid-zivid-ros
apriltag_ros github-AprilRobotics-apriltag_ros

Launch files

No launch files found

Messages

No message files found.

Plugins

No plugins found.

Recent questions tagged nodelet at answers.ros.org

Package Summary

Tags No category tags.
Version 1.9.16
License BSD
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/ros/nodelet_core.git
VCS Type git
VCS Version indigo-devel
Last Updated 2019-02-15
Dev Status MAINTAINED
Released RELEASED

Package Description

The nodelet package is designed to provide a way to run multiple algorithms in the same process with zero copy transport between algorithms. This package provides both the nodelet base class needed for implementing a nodelet, as well as the NodeletLoader class used for instantiating nodelets.

Additional Links

Maintainers

  • Mikael Arguedas

Authors

  • Tully Foote
  • Radu Bogdan Rusu
README
No README found. No README in repository either.
CHANGELOG

Changelog for package nodelet

Forthcoming

  • delay processing of queues until Nodelet::onInit() returns

1.9.16 (2018-04-27)

  • uuid dependency fixup (#74)
    • don\'t export uuid library
    • wrap for readability
  • Contributors: Mikael Arguedas

1.9.15 (2018-03-16)

  • use new pluginlib headers (#73)
  • Contributors: Mikael Arguedas

1.9.14 (2017-11-15)

  • declared_nodelets: continue on missing plugin xml (#70)
  • Contributors: Furushchev

1.9.13 (2017-10-27)

  • Drop unneeded forward declaration. (#68)
  • Contributors: Mike Purvis

1.9.12 (2017-08-04)

1.9.11 (2017-07-27)

  • Add getRemappingArgs method to nodelet to reuse it in subclass (#61)
  • remove trailing whitespaces (#62)
  • switch to package format 2 (#63)
  • Show pkg and manifest file with verbose option (#59)
  • Contributors: Kentaro Wada, Mikael Arguedas

1.9.10 (2017-03-27)

1.9.9 (2017-02-17)

  • drop unused dependency on tinyxml (#54)
  • Install the declared_nodelets script (#53)
  • Contributors: Dmitry Rozhkov, Kentaro Wada

1.9.8 (2016-11-15)

  • Fix bond handling during nodelet unloading (#51)

    • add test whether bond breaking on unload works (tests #50)

    * disable callback for broken bond when we are breaking it This avoids the nodelet::LoaderROS::unload() method to be called twice for the same nodelet, causing an error output. * use AsyncSpinner for nodelet load in order for the shutdown procedure to work During shutdown, the bonds still need to communicate their status in order for the nodelet to properly/cleanly/quickly unload. This requires the node to spin. - add test whether LoaderROS::unload() is called twice (tests #50)

  • Contributors: Daniel Seifert

1.9.7 (2016-10-24)

1.9.6 (2016-09-20)

1.9.5 (2016-06-22)

  • more sane debugging messages
  • Contributors: Daniel Stonier

1.9.4 (2016-03-15)

  • update maintainer
  • Contributors: Mikael Arguedas

1.9.3 (2015-08-05)

  • adding support for named nodelet loggers
  • nodelet loader: display error messages from both load attempts on failure
  • Contributors: Max Schwarz, Tully Foote

1.9.2 (2014-10-30)

  • Fix dependency version
  • Contributors: Esteve Fernandez

1.9.1 (2014-10-29)

  • Use FindUUID.cmake from cmake-modules to find the UUID libraries
  • nodelet: Loader: do not call impl->refresh_classes if not available
  • Contributors: Esteve Fernandez, Max Schwarz

1.9.0 (2014-06-16)

  • Fix initialization error handling (#13)
  • Contributors: Esteve Fernandez

1.8.3 (2014-05-08)

  • Add version to pluginlib dependency
  • nodelet: avoid breaking bond when unloading unknown nodelet
  • nodelet: refresh list of available classes if class is not found
  • Fixed missing header
  • Correctly check that there are enough arguments when nodelet is launched with the unload command
  • Exit if Loader::load returns failure in \"standalone\" mode instead of continuing to run
  • Contributors: Dirk Thomas, Esteve Fernandez, Forrest Voight, Gary Servin, Marcus Liebhardt, Mitchell Wills
  • fix missing header (#14)
  • fix check that there are enough arguments when nodelet is launched with the unload command (#12)
  • exit if Loader::load returns failure in \"standalone\" mode instead of continuing to run (#11)

1.8.2 (2014-01-07)

  • fix erasing bond when it breaks (#8)

1.8.0 (2013-07-11)

  • add missing archive/library/runtime destination for library
  • Export pluginlib as a transitive dependency Also remove some old Apple specific rules which are no longer required.
  • use EXPORTED_TARGETS variable instead of explicit target names
  • update email in package.xml

1.7.15 (2013-03-12)

1.7.14 (2013-01-13)

  • add missing link library uuid (fix #4)

1.7.13 (2012-12-27)

  • move nodelet_topic_tools to separate package, fix unit tests

1.7.12 (2012-12-19 01:34)

1.7.11 (2012-12-19 00:58)

1.7.10 (2012-12-14)

  • add missing dep to catkin

1.7.9 (2012-12-13)

  • add missing downstream depend
  • switched from langs to message* packages

1.7.8 (2012-12-06)

  • updated catkin_package(DEPENDS)

1.7.7 (2012-11-01)

1.7.6 (2012-10-30)

  • fix catkin function order
  • clean up package.xml files

1.7.5 (2012-10-23)

1.7.4 (2012-10-08)

1.7.3 (2012-10-04)

1.7.2 (2012-10-03)

1.7.1 (2012-10-02)

  • adding nodelet_core metapackage and reving to 1.7.1

1.7.0 (2012-10-01)

  • fix dependencies
  • make it compile locally
  • first pass at catkinizing the stack
  • updated to latest pluginlib
  • updated usage of pluginlib according to updated REP 121
  • use updated pluginlib to auto-unload libraries when unloading nodelets
  • fixed issue #5144 on OS X lion
  • Commentary on who owns what among Loader, Nodelet, CallbackQueue and CallbackQueueManager.
  • Moved most of Loader\'s member variables into an opaque PIMPL struct so we can change things without breaking ABI.
  • All bond code moved to LoaderROS. Loader no longer needs to know about bond.
  • Removed CallbackQueue::disable(). Loader removes a nodelet\'s queues from the queue manager when unloading it, which is sufficient to prevent new callbacks for that nodelet getting added.
  • Removed some code and comments concerned with callbacks getting called after their nodelet\'s destruction. This can\'t actually happen anymore, since callbacks only fire if they can lock a weak_ptr to their parent nodelet.
  • Refactoring to streamline Nodelet back down to a simple plugin interface. It no longer knows about detail::CallbackQueue[Manager] or Bond; init() simply takes the single- and multi-threaded ros::CallbackQueueInterface* instead (defaulting to NULL). Loader owns the callback queues and bond for each nodelet. This makes it possible to use Nodelet without all the surrounding infrastructure.
  • Take Bond pointers as const-ref instead of value in Loader and Nodelet.
  • Added Loader constructor taking a boost::function object used as a factory for nodelet instances, replacing the default use of a pluginlib class loader. This is to support ROSGUI, which defines its specialized plugin interface as a subclass of Nodelet, and thus needs a different class loader.
  • Removed some debug code in Loader constructor.
  • \'nodelet load\' more reliably unloads the nodelet on exiting. In particular it intercepts XML-RPC shutdown command, used for example by \'rosnode kill\'.
  • Enabled error output when service calls fail abnormally.
  • Rewrote tracked_object logic to be clearer.
  • Have detail::CallbackQueue use a ros::VoidConstWPtr as the tracked object, which is now optional. More generic, and fixes test_nodelet which was broken by the last commit.
  • Fixed race conditions/deadlocks when unloading a nodelet. Now disable the nodelet\'s callback queues before deleting it. The queues have a WPtr to the nodelet, so any outstanding callbacks will get discarded.
  • ~Loader now stops callback manager threads before destroying the nodelets. Otherwise the worker threads could operate on nodelet data as/after it\'s destroyed.
  • Use ros::names::parentNamespace().
  • Cleaned scoped_ptr\'s out of ThreadInfo and updated its padding.
  • Made ThreadInfo::calling an atomic_count. This allows the manager thread to pick the queue with least work more accurately, and reduces contention b/c getSmallestQueue no longer needs to lock on queue_mutex_.
  • Minor code cleanup and finer locking in managerThread().
  • Actually pad ThreadInfo to a multiple of 64 bytes. Previous expression was wrongly wrapped in sizeof().
  • Instead of thread_info_.resize(num_threads), push each ThreadInfo on individually. With resize(), all threads ended up sharing the same queue_mutex and queue_cond. Doesn\'t seem to be much of a performance win though.
  • Added test instrumentation to CallbackQueueManager to track size of worker thread queues over time. Must be enabled at compilation time with -DNODELET_QUEUE_DEBUG.
  • nodelet patches for osx lion support from wjwwood
  • Added --no-bond option to nodelet loading to disable bonds.
  • updated platform tags
  • don\'t need to link against tinyxml directly
  • link against system tinyxml
  • Fix for #4855 This fix actually makes sense, but that it wasn\'t caught earlier doesn\'t. The construction of nodelet::Loader n(false) was creating the first node handle and letting it go out of scope, which was automagically calling ros::shutdown(), which is a dumb thing for ros::NodeHandle to do automagically on destruction.
  • Each nodelet now places its bonds on a custom callback queue
  • a script to list declared nodelets
  • real fix for #4460
  • patch for #4460
  • adding support for once, throttle, and filter features. With unit tests for all but the filters #4681
  • fix for #4609
  • MUX simplified by using a 8-connected null filters DeMUX has a specialization for message type (uses ros::Subscriber internally by default) Added rosdep for nodelet (uuid)
  • adding optional namespace aware constructor to nodelet loader. #4243 and fixing vestigial comments referencing Filters #4221
  • nodelet uses bond to handle crashes on the manager or the spawner end. #4221
  • locking in all cases
  • fix hang on CallbackQueueManager destruction (#4402)
  • better check for services
  • fix hanging tests and a hang on nodelet CallbackQueueManager destruction (#4082)
  • added a boost mutex
  • preventing nodelets from busywaiting
  • Added optional parameter num_worker_threads to nodelets.
  • Added Ubuntu platform tags to manifest
  • implemented nodelet unloading on shutdown
  • fixed a segfault on destroy
  • merging josh\'s branch from ticket #3875
  • adding usage
  • fancy new command line parsing for nodelets #3876
  • moving topic tools out of nodelet proper, removing rospy and message_filters dependencies from nodelet
  • doc updates
  • fixed a segfault
  • small changes (ptr->boost shared_ptr)
  • init guard
  • making nodehandles pointers to avoid default constructors
  • switching mt_spinner to be a pointer created on init so it\'s not trying to create a nodehandle at construction
  • cleanup
  • switching to cpp command based nodelet implementation as per API review
  • changes as per API review
  • enforcing unique name in manager
  • supporting argv passing on server side
  • getname return type for API review
  • adding MT Nodehandle creation methods and fixing up tutorials
  • passing parameters
  • we\'re always going to spin
  • added my_args in the service call
  • some changes as we discuss them during the API review
  • cleaning up private and public api elements
  • nodelet_internal_init is now private and a friend of NodeletLoader
  • nodelet API changes
  • COND rosconsole Nodelet wrappers working
  • adding multithreaded callback queue
  • removing unnecessary code after refactor
  • adding NODELET rosconsole wrappers, note init method is now void args
  • moving nodelet package into common trunk so I don\'t lose it in reorganization

Wiki Tutorials

See ROS Wiki Tutorials for more details.

Source Tutorials

Not currently indexed.

Dependant Packages

Name Repo Deps
avt_vimba_camera github-srv-avt_vimba_camera
avt_vimba_camera github-astuff-avt_vimba_camera
camera1394 github-ros-drivers-camera1394
camera1394stereo github-srv-camera1394stereo
uvc_camera github-ros-drivers-camera_umd
capabilities github-osrf-capabilities
laser_scan_densifier github-ipa320-cob_driver
cob_cam3d_throttle github-ipa320-cob_perception_common
cob_image_flip github-ipa320-cob_perception_common
cob_bringup github-ipa320-cob_robots
nodelet_tutorial_math github-ros-common_tutorials
cv_camera github-OTL-cv_camera
depthimage_to_laserscan github-ros-perception-depthimage_to_laserscan
freenect_camera github-ros-drivers-freenect_stack
freenect_launch github-ros-drivers-freenect_stack
gazebo_plugins github-ros-simulation-gazebo_ros_pkgs
gscam github-ros-drivers-gscam
hector_pose_estimation github-tu-darmstadt-ros-pkg-hector_localization
hector_elevation_mapping github-tu-darmstadt-ros-pkg-hector_navigation
hector_quadrotor_pose_estimation github-tu-darmstadt-ros-pkg-hector_quadrotor
hector_qrcode_detection github-tu-darmstadt-ros-pkg-hector_vision
hector_barrel_detection_nodelet github-tu-darmstadt-ros-pkg-hector_visualization
depth_image_proc github-ros-perception-image_pipeline
image_proc github-ros-perception-image_pipeline
image_publisher github-ros-perception-image_pipeline
image_rotate github-ros-perception-image_pipeline
image_view github-ros-perception-image_pipeline
stereo_image_proc github-ros-perception-image_pipeline
imu_transformer github-ros-perception-imu_pipeline
imu_filter_madgwick github-ccny-ros-pkg-imu_tools
industrial_extrinsic_cal github-ros-industrial-industrial_calibration
intrinsic_cal github-ros-industrial-industrial_calibration
rgbd_depth_correction github-ros-industrial-industrial_calibration
target_finder github-ros-industrial-industrial_calibration
jsk_data github-jsk-ros-pkg-jsk_common
jsk_topic_tools github-jsk-ros-pkg-jsk_common
imagesift github-jsk-ros-pkg-jsk_recognition
jsk_pcl_ros github-jsk-ros-pkg-jsk_recognition
jsk_pcl_ros_utils github-jsk-ros-pkg-jsk_recognition
jsk_perception github-jsk-ros-pkg-jsk_recognition
resized_image_transport github-jsk-ros-pkg-jsk_recognition
kobuki_auto_docking github-yujinrobot-kobuki
kobuki_bumper2pc github-yujinrobot-kobuki
kobuki_capabilities github-yujinrobot-kobuki
kobuki_controller_tutorial github-yujinrobot-kobuki
kobuki_node github-yujinrobot-kobuki
kobuki_random_walker github-yujinrobot-kobuki
kobuki_rapps github-yujinrobot-kobuki
kobuki_safety_controller github-yujinrobot-kobuki
kobuki_softnode github-yujinrobot-kobuki_soft
laser_proc github-ros-perception-laser_proc
libuvc_camera github-ros-drivers-libuvc_ros
nodelet_core github-ros-nodelet_core
nodelet_topic_tools github-ros-nodelet_core
test_nodelet github-ros-nodelet_core
test_nodelet_topic_tools github-ros-nodelet_core
octomap_server github-OctoMap-octomap_mapping
openni2_camera github-ros-drivers-openni2_camera
openni2_launch github-ros-drivers-openni2_camera
openni_camera github-ros-drivers-openni_camera
openni_launch github-ros-drivers-openni_camera
pcl_ros github-ros-perception-perception_pcl
phidgets_high_speed_encoder github-ros-drivers-phidgets_drivers
phidgets_ik github-ros-drivers-phidgets_drivers
phidgets_imu github-ros-drivers-phidgets_drivers
pointgrey_camera_driver github-ros-drivers-pointgrey_camera_driver
prosilica_camera github-ros-drivers-prosilica_driver
rgbd_launch github-ros-drivers-rgbd_launch
rqt_gui_cpp github-ros-visualization-rqt
rtabmap_ros github-introlab-rtabmap_ros
segbot_sensors github-utexas-bwi-segbot
gmapping github-ros-perception-slam_gmapping
stdr_robot github-stdr-simulator-ros-pkg-stdr_simulator
stdr_server github-stdr-simulator-ros-pkg-stdr_simulator
turtlebot_follower github-turtlebot-turtlebot_apps
ueye_cam github-anqixu-ueye_cam
urg_node github-ros-drivers-urg_node
velodyne_driver github-ros-drivers-velodyne
velodyne_laserscan github-ros-drivers-velodyne
velodyne_pointcloud github-ros-drivers-velodyne
video_stream_opencv github-ros-drivers-video_stream_opencv
visp_tracker github-lagadic-vision_visp
visp_ros github-lagadic-visp_ros
yocs_cmd_vel_mux github-yujinrobot-yujin_ocs
yocs_diff_drive_pose_controller github-yujinrobot-yujin_ocs
yocs_safety_controller github-yujinrobot-yujin_ocs
yocs_velocity_smoother github-yujinrobot-yujin_ocs
zbar_ros github-ros-drivers-zbar_ros
astra_camera github-orbbec-ros_astra_camera
astra_launch github-orbbec-ros_astra_launch
bebop_driver github-AutonomyLab-bebop_autonomy
bta_tof_driver github-voxel-dot-at-bta_tof_driver
camera_pose_calibration github-delftrobotics-camera_pose_calibration
dataspeed_ulc_can bitbucket-DataspeedInc-dataspeed_ulc_ros
cliff_detector github-mdrwiega-depth_nav_tools
depth_sensor_pose github-mdrwiega-depth_nav_tools
laserscan_kinect github-mdrwiega-depth_nav_tools
fetch_gazebo github-fetchrobotics-fetch_gazebo
flir_boson_usb github-astuff-flir_boson_usb
infinisoleil github-ncs-3d-sensing-infinisoleil
swri_image_util github-swri-robotics-marti_common
swri_nodelet github-swri-robotics-marti_common
swri_transform_util github-swri-robotics-marti_common
novatel_gps_driver github-swri-robotics-novatel_gps_driver
oculusprime github-xaxxontech-oculusprime_ros
rb_tracker github-tu-rbo-omip
opencv_apps github-ros-perception-opencv_apps
dbw_pacifica_can github-NewEagleRaptor-pacifica-dbw-ros
pointcloud_to_laserscan github-ros-perception-pointcloud_to_laserscan
rc_visard_driver github-roboception-rc_visard_ros
realsense_camera github-intel-ros-realsense
realsense2_camera github-IntelRealSense-realsense-ros
roch_follower github-SawYer-Robotics-roch
roch_navigation github-SawYer-Robotics-roch
roch_rapps github-SawYer-Robotics-roch
roch_base github-SawYer-Robotics-roch_robot
roch_capabilities github-SawYer-Robotics-roch_robot
roch_sensorpc github-SawYer-Robotics-roch_robot
ros1_ros_cpptemplate github-pyros-dev-ros1_template
laser_ortho_projector github-ccny-ros-pkg-scan_tools
laser_scan_matcher github-ccny-ros-pkg-scan_tools
laser_scan_sparsifier github-ccny-ros-pkg-scan_tools
laser_scan_splitter github-ccny-ros-pkg-scan_tools
tango_ros_native github-Intermodalics-tango_ros
webrtc_ros github-RobotWebTools-webrtc_ros
ensenso_camera github-ensenso-ros_driver
nerian_stereo github-nerian-vision-nerian_stereo
omronsentech_camera github-ose-support-ros-omronsentech_camera
ainstein_radar_drivers github-AinsteinAI-ainstein_radar
ainstein_radar_filters github-AinsteinAI-ainstein_radar
apriltag_ros github-dmalyuta-apriltags2_ros
cht10_node github-Playfish-cht10_node
find_moving_objects github-andreasgustavsson-find_moving_objects
spinnaker_camera_driver github-ros-drivers-flir_camera_driver
imi_camera github-HUAJIEIMI-imi_ros
mynt_eye_ros_wrapper github-harjeb-libmynteye
mynt_eye_ros_wrapper github-harjeb-mynt_eye_ros_wrapper
lslidar_c16_decoder github-tongsky723-lslidar_C16
lslidar_c16_driver github-tongsky723-lslidar_C16
lslidar_n301_driver github-leishen-lidar-LSN301
movidius_ncs_launch github-intel-ros_intel_movidius_ncs
movidius_ncs_stream github-intel-ros_intel_movidius_ncs
o3m151_driver github-labex-imobs3-ifm_o3m151
rslidar_driver github-CPFL-robosense
rslidar_pointcloud github-CPFL-robosense
spinnaker_sdk_camera_driver github-neufieldrobotics-spinnaker_sdk_camera_driver
tuw_ellipses github-tuw-robotics-tuw_marker_detection
tuw_multi_robot_ctrl github-tuw-robotics-tuw_multi_robot
usb_cam_hardware github-yoshito-n-students-usb_cam_hardware
xbot_node github-DroidAITech-xbot
xbot_safety_controller github-DroidAITech-xbot
xiaoqiang_depth_image_proc github-bluewhalerobot-xiaoqiang
xiaoqiang_freenect_camera github-bluewhalerobot-xiaoqiang
xiaoqiang_freenect_launch github-bluewhalerobot-xiaoqiang
zivid_camera github-zivid-zivid-ros

Launch files

No launch files found

Messages

No message files found.

Plugins

No plugins found.

Recent questions tagged nodelet at answers.ros.org

No version for distro ardent. Known supported distros are highlighted in the buttons above.

Package Summary

Tags No category tags.
Version 1.9.16
License BSD
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/ros/nodelet_core.git
VCS Type git
VCS Version indigo-devel
Last Updated 2019-02-15
Dev Status MAINTAINED
Released RELEASED

Package Description

The nodelet package is designed to provide a way to run multiple algorithms in the same process with zero copy transport between algorithms. This package provides both the nodelet base class needed for implementing a nodelet, as well as the NodeletLoader class used for instantiating nodelets.

Additional Links

Maintainers

  • Mikael Arguedas

Authors

  • Tully Foote
  • Radu Bogdan Rusu
README
No README found. No README in repository either.
CHANGELOG

Changelog for package nodelet

Forthcoming

  • delay processing of queues until Nodelet::onInit() returns

1.9.16 (2018-04-27)

  • uuid dependency fixup (#74)
    • don\'t export uuid library
    • wrap for readability
  • Contributors: Mikael Arguedas

1.9.15 (2018-03-16)

  • use new pluginlib headers (#73)
  • Contributors: Mikael Arguedas

1.9.14 (2017-11-15)

  • declared_nodelets: continue on missing plugin xml (#70)
  • Contributors: Furushchev

1.9.13 (2017-10-27)

  • Drop unneeded forward declaration. (#68)
  • Contributors: Mike Purvis

1.9.12 (2017-08-04)

1.9.11 (2017-07-27)

  • Add getRemappingArgs method to nodelet to reuse it in subclass (#61)
  • remove trailing whitespaces (#62)
  • switch to package format 2 (#63)
  • Show pkg and manifest file with verbose option (#59)
  • Contributors: Kentaro Wada, Mikael Arguedas

1.9.10 (2017-03-27)

1.9.9 (2017-02-17)

  • drop unused dependency on tinyxml (#54)
  • Install the declared_nodelets script (#53)
  • Contributors: Dmitry Rozhkov, Kentaro Wada

1.9.8 (2016-11-15)

  • Fix bond handling during nodelet unloading (#51)

    • add test whether bond breaking on unload works (tests #50)

    * disable callback for broken bond when we are breaking it This avoids the nodelet::LoaderROS::unload() method to be called twice for the same nodelet, causing an error output. * use AsyncSpinner for nodelet load in order for the shutdown procedure to work During shutdown, the bonds still need to communicate their status in order for the nodelet to properly/cleanly/quickly unload. This requires the node to spin. - add test whether LoaderROS::unload() is called twice (tests #50)

  • Contributors: Daniel Seifert

1.9.7 (2016-10-24)

1.9.6 (2016-09-20)

1.9.5 (2016-06-22)

  • more sane debugging messages
  • Contributors: Daniel Stonier

1.9.4 (2016-03-15)

  • update maintainer
  • Contributors: Mikael Arguedas

1.9.3 (2015-08-05)

  • adding support for named nodelet loggers
  • nodelet loader: display error messages from both load attempts on failure
  • Contributors: Max Schwarz, Tully Foote

1.9.2 (2014-10-30)

  • Fix dependency version
  • Contributors: Esteve Fernandez

1.9.1 (2014-10-29)

  • Use FindUUID.cmake from cmake-modules to find the UUID libraries
  • nodelet: Loader: do not call impl->refresh_classes if not available
  • Contributors: Esteve Fernandez, Max Schwarz

1.9.0 (2014-06-16)

  • Fix initialization error handling (#13)
  • Contributors: Esteve Fernandez

1.8.3 (2014-05-08)

  • Add version to pluginlib dependency
  • nodelet: avoid breaking bond when unloading unknown nodelet
  • nodelet: refresh list of available classes if class is not found
  • Fixed missing header
  • Correctly check that there are enough arguments when nodelet is launched with the unload command
  • Exit if Loader::load returns failure in \"standalone\" mode instead of continuing to run
  • Contributors: Dirk Thomas, Esteve Fernandez, Forrest Voight, Gary Servin, Marcus Liebhardt, Mitchell Wills
  • fix missing header (#14)
  • fix check that there are enough arguments when nodelet is launched with the unload command (#12)
  • exit if Loader::load returns failure in \"standalone\" mode instead of continuing to run (#11)

1.8.2 (2014-01-07)

  • fix erasing bond when it breaks (#8)

1.8.0 (2013-07-11)

  • add missing archive/library/runtime destination for library
  • Export pluginlib as a transitive dependency Also remove some old Apple specific rules which are no longer required.
  • use EXPORTED_TARGETS variable instead of explicit target names
  • update email in package.xml

1.7.15 (2013-03-12)

1.7.14 (2013-01-13)

  • add missing link library uuid (fix #4)

1.7.13 (2012-12-27)

  • move nodelet_topic_tools to separate package, fix unit tests

1.7.12 (2012-12-19 01:34)

1.7.11 (2012-12-19 00:58)

1.7.10 (2012-12-14)

  • add missing dep to catkin

1.7.9 (2012-12-13)

  • add missing downstream depend
  • switched from langs to message* packages

1.7.8 (2012-12-06)

  • updated catkin_package(DEPENDS)

1.7.7 (2012-11-01)

1.7.6 (2012-10-30)

  • fix catkin function order
  • clean up package.xml files

1.7.5 (2012-10-23)

1.7.4 (2012-10-08)

1.7.3 (2012-10-04)

1.7.2 (2012-10-03)

1.7.1 (2012-10-02)

  • adding nodelet_core metapackage and reving to 1.7.1

1.7.0 (2012-10-01)

  • fix dependencies
  • make it compile locally
  • first pass at catkinizing the stack
  • updated to latest pluginlib
  • updated usage of pluginlib according to updated REP 121
  • use updated pluginlib to auto-unload libraries when unloading nodelets
  • fixed issue #5144 on OS X lion
  • Commentary on who owns what among Loader, Nodelet, CallbackQueue and CallbackQueueManager.
  • Moved most of Loader\'s member variables into an opaque PIMPL struct so we can change things without breaking ABI.
  • All bond code moved to LoaderROS. Loader no longer needs to know about bond.
  • Removed CallbackQueue::disable(). Loader removes a nodelet\'s queues from the queue manager when unloading it, which is sufficient to prevent new callbacks for that nodelet getting added.
  • Removed some code and comments concerned with callbacks getting called after their nodelet\'s destruction. This can\'t actually happen anymore, since callbacks only fire if they can lock a weak_ptr to their parent nodelet.
  • Refactoring to streamline Nodelet back down to a simple plugin interface. It no longer knows about detail::CallbackQueue[Manager] or Bond; init() simply takes the single- and multi-threaded ros::CallbackQueueInterface* instead (defaulting to NULL). Loader owns the callback queues and bond for each nodelet. This makes it possible to use Nodelet without all the surrounding infrastructure.
  • Take Bond pointers as const-ref instead of value in Loader and Nodelet.
  • Added Loader constructor taking a boost::function object used as a factory for nodelet instances, replacing the default use of a pluginlib class loader. This is to support ROSGUI, which defines its specialized plugin interface as a subclass of Nodelet, and thus needs a different class loader.
  • Removed some debug code in Loader constructor.
  • \'nodelet load\' more reliably unloads the nodelet on exiting. In particular it intercepts XML-RPC shutdown command, used for example by \'rosnode kill\'.
  • Enabled error output when service calls fail abnormally.
  • Rewrote tracked_object logic to be clearer.
  • Have detail::CallbackQueue use a ros::VoidConstWPtr as the tracked object, which is now optional. More generic, and fixes test_nodelet which was broken by the last commit.
  • Fixed race conditions/deadlocks when unloading a nodelet. Now disable the nodelet\'s callback queues before deleting it. The queues have a WPtr to the nodelet, so any outstanding callbacks will get discarded.
  • ~Loader now stops callback manager threads before destroying the nodelets. Otherwise the worker threads could operate on nodelet data as/after it\'s destroyed.
  • Use ros::names::parentNamespace().
  • Cleaned scoped_ptr\'s out of ThreadInfo and updated its padding.
  • Made ThreadInfo::calling an atomic_count. This allows the manager thread to pick the queue with least work more accurately, and reduces contention b/c getSmallestQueue no longer needs to lock on queue_mutex_.
  • Minor code cleanup and finer locking in managerThread().
  • Actually pad ThreadInfo to a multiple of 64 bytes. Previous expression was wrongly wrapped in sizeof().
  • Instead of thread_info_.resize(num_threads), push each ThreadInfo on individually. With resize(), all threads ended up sharing the same queue_mutex and queue_cond. Doesn\'t seem to be much of a performance win though.
  • Added test instrumentation to CallbackQueueManager to track size of worker thread queues over time. Must be enabled at compilation time with -DNODELET_QUEUE_DEBUG.
  • nodelet patches for osx lion support from wjwwood
  • Added --no-bond option to nodelet loading to disable bonds.
  • updated platform tags
  • don\'t need to link against tinyxml directly
  • link against system tinyxml
  • Fix for #4855 This fix actually makes sense, but that it wasn\'t caught earlier doesn\'t. The construction of nodelet::Loader n(false) was creating the first node handle and letting it go out of scope, which was automagically calling ros::shutdown(), which is a dumb thing for ros::NodeHandle to do automagically on destruction.
  • Each nodelet now places its bonds on a custom callback queue
  • a script to list declared nodelets
  • real fix for #4460
  • patch for #4460
  • adding support for once, throttle, and filter features. With unit tests for all but the filters #4681
  • fix for #4609
  • MUX simplified by using a 8-connected null filters DeMUX has a specialization for message type (uses ros::Subscriber internally by default) Added rosdep for nodelet (uuid)
  • adding optional namespace aware constructor to nodelet loader. #4243 and fixing vestigial comments referencing Filters #4221
  • nodelet uses bond to handle crashes on the manager or the spawner end. #4221
  • locking in all cases
  • fix hang on CallbackQueueManager destruction (#4402)
  • better check for services
  • fix hanging tests and a hang on nodelet CallbackQueueManager destruction (#4082)
  • added a boost mutex
  • preventing nodelets from busywaiting
  • Added optional parameter num_worker_threads to nodelets.
  • Added Ubuntu platform tags to manifest
  • implemented nodelet unloading on shutdown
  • fixed a segfault on destroy
  • merging josh\'s branch from ticket #3875
  • adding usage
  • fancy new command line parsing for nodelets #3876
  • moving topic tools out of nodelet proper, removing rospy and message_filters dependencies from nodelet
  • doc updates
  • fixed a segfault
  • small changes (ptr->boost shared_ptr)
  • init guard
  • making nodehandles pointers to avoid default constructors
  • switching mt_spinner to be a pointer created on init so it\'s not trying to create a nodehandle at construction
  • cleanup
  • switching to cpp command based nodelet implementation as per API review
  • changes as per API review
  • enforcing unique name in manager
  • supporting argv passing on server side
  • getname return type for API review
  • adding MT Nodehandle creation methods and fixing up tutorials
  • passing parameters
  • we\'re always going to spin
  • added my_args in the service call
  • some changes as we discuss them during the API review
  • cleaning up private and public api elements
  • nodelet_internal_init is now private and a friend of NodeletLoader
  • nodelet API changes
  • COND rosconsole Nodelet wrappers working
  • adding multithreaded callback queue
  • removing unnecessary code after refactor
  • adding NODELET rosconsole wrappers, note init method is now void args
  • moving nodelet package into common trunk so I don\'t lose it in reorganization

Wiki Tutorials

See ROS Wiki Tutorials for more details.

Source Tutorials

Not currently indexed.

Dependant Packages

Name Repo Deps
uvc_camera github-ros-drivers-camera_umd
capabilities github-osrf-capabilities
nodelet_tutorial_math github-ros-common_tutorials
cv_camera github-OTL-cv_camera
gazebo_plugins github-ros-simulation-gazebo_ros_pkgs
gscam github-ros-drivers-gscam
depth_image_proc github-ros-perception-image_pipeline
image_proc github-ros-perception-image_pipeline
image_publisher github-ros-perception-image_pipeline
image_rotate github-ros-perception-image_pipeline
image_view github-ros-perception-image_pipeline
stereo_image_proc github-ros-perception-image_pipeline
imu_transformer github-ros-perception-imu_pipeline
imu_filter_madgwick github-ccny-ros-pkg-imu_tools
laser_proc github-ros-perception-laser_proc
libuvc_camera github-ros-drivers-libuvc_ros
nodelet_core github-ros-nodelet_core
nodelet_topic_tools github-ros-nodelet_core
test_nodelet github-ros-nodelet_core
test_nodelet_topic_tools github-ros-nodelet_core
octomap_server github-OctoMap-octomap_mapping
openni2_camera github-ros-drivers-openni2_camera
openni2_launch github-ros-drivers-openni2_camera
openni_camera github-ros-drivers-openni_camera
openni_launch github-ros-drivers-openni_camera
pcl_ros github-ros-perception-perception_pcl
phidgets_ik github-ros-drivers-phidgets_drivers
phidgets_imu github-ros-drivers-phidgets_drivers
pointgrey_camera_driver github-ros-drivers-pointgrey_camera_driver
rgbd_launch github-ros-drivers-rgbd_launch
robot_localization github-cra-ros-pkg-robot_localization
rqt_gui_cpp github-ros-visualization-rqt
rtabmap_ros github-introlab-rtabmap_ros
gmapping github-ros-perception-slam_gmapping
urg_node github-ros-drivers-urg_node
velodyne_driver github-ros-drivers-velodyne
velodyne_laserscan github-ros-drivers-velodyne
velodyne_pointcloud github-ros-drivers-velodyne
video_stream_opencv github-ros-drivers-video_stream_opencv
visp_tracker github-lagadic-vision_visp
zbar_ros github-ros-drivers-zbar_ros
bta_tof_driver github-voxel-dot-at-bta_tof_driver
flir_boson_usb github-astuff-flir_boson_usb
swri_image_util github-swri-robotics-marti_common
swri_nodelet github-swri-robotics-marti_common
swri_transform_util github-swri-robotics-marti_common
novatel_gps_driver github-swri-robotics-novatel_gps_driver
opencv_apps github-ros-perception-opencv_apps
pointcloud_to_laserscan github-ros-perception-pointcloud_to_laserscan
rc_visard_driver github-roboception-rc_visard_ros
ensenso_camera github-ensenso-ros_driver
nerian_stereo github-nerian-vision-nerian_stereo
omronsentech_camera github-ose-support-ros-omronsentech_camera

Launch files

No launch files found

Messages

No message files found.

Plugins

No plugins found.

Recent questions tagged nodelet at answers.ros.org

Package Summary

Tags No category tags.
Version 1.9.16
License BSD
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/ros/nodelet_core.git
VCS Type git
VCS Version indigo-devel
Last Updated 2019-02-15
Dev Status MAINTAINED
Released RELEASED

Package Description

The nodelet package is designed to provide a way to run multiple algorithms in the same process with zero copy transport between algorithms. This package provides both the nodelet base class needed for implementing a nodelet, as well as the NodeletLoader class used for instantiating nodelets.

Additional Links

Maintainers

  • Mikael Arguedas

Authors

  • Tully Foote
  • Radu Bogdan Rusu
README
No README found. No README in repository either.
CHANGELOG

Changelog for package nodelet

Forthcoming

  • delay processing of queues until Nodelet::onInit() returns

1.9.16 (2018-04-27)

  • uuid dependency fixup (#74)
    • don\'t export uuid library
    • wrap for readability
  • Contributors: Mikael Arguedas

1.9.15 (2018-03-16)

  • use new pluginlib headers (#73)
  • Contributors: Mikael Arguedas

1.9.14 (2017-11-15)

  • declared_nodelets: continue on missing plugin xml (#70)
  • Contributors: Furushchev

1.9.13 (2017-10-27)

  • Drop unneeded forward declaration. (#68)
  • Contributors: Mike Purvis

1.9.12 (2017-08-04)

1.9.11 (2017-07-27)

  • Add getRemappingArgs method to nodelet to reuse it in subclass (#61)
  • remove trailing whitespaces (#62)
  • switch to package format 2 (#63)
  • Show pkg and manifest file with verbose option (#59)
  • Contributors: Kentaro Wada, Mikael Arguedas

1.9.10 (2017-03-27)

1.9.9 (2017-02-17)

  • drop unused dependency on tinyxml (#54)
  • Install the declared_nodelets script (#53)
  • Contributors: Dmitry Rozhkov, Kentaro Wada

1.9.8 (2016-11-15)

  • Fix bond handling during nodelet unloading (#51)

    • add test whether bond breaking on unload works (tests #50)

    * disable callback for broken bond when we are breaking it This avoids the nodelet::LoaderROS::unload() method to be called twice for the same nodelet, causing an error output. * use AsyncSpinner for nodelet load in order for the shutdown procedure to work During shutdown, the bonds still need to communicate their status in order for the nodelet to properly/cleanly/quickly unload. This requires the node to spin. - add test whether LoaderROS::unload() is called twice (tests #50)

  • Contributors: Daniel Seifert

1.9.7 (2016-10-24)

1.9.6 (2016-09-20)

1.9.5 (2016-06-22)

  • more sane debugging messages
  • Contributors: Daniel Stonier

1.9.4 (2016-03-15)

  • update maintainer
  • Contributors: Mikael Arguedas

1.9.3 (2015-08-05)

  • adding support for named nodelet loggers
  • nodelet loader: display error messages from both load attempts on failure
  • Contributors: Max Schwarz, Tully Foote

1.9.2 (2014-10-30)

  • Fix dependency version
  • Contributors: Esteve Fernandez

1.9.1 (2014-10-29)

  • Use FindUUID.cmake from cmake-modules to find the UUID libraries
  • nodelet: Loader: do not call impl->refresh_classes if not available
  • Contributors: Esteve Fernandez, Max Schwarz

1.9.0 (2014-06-16)

  • Fix initialization error handling (#13)
  • Contributors: Esteve Fernandez

1.8.3 (2014-05-08)

  • Add version to pluginlib dependency
  • nodelet: avoid breaking bond when unloading unknown nodelet
  • nodelet: refresh list of available classes if class is not found
  • Fixed missing header
  • Correctly check that there are enough arguments when nodelet is launched with the unload command
  • Exit if Loader::load returns failure in \"standalone\" mode instead of continuing to run
  • Contributors: Dirk Thomas, Esteve Fernandez, Forrest Voight, Gary Servin, Marcus Liebhardt, Mitchell Wills
  • fix missing header (#14)
  • fix check that there are enough arguments when nodelet is launched with the unload command (#12)
  • exit if Loader::load returns failure in \"standalone\" mode instead of continuing to run (#11)

1.8.2 (2014-01-07)

  • fix erasing bond when it breaks (#8)

1.8.0 (2013-07-11)

  • add missing archive/library/runtime destination for library
  • Export pluginlib as a transitive dependency Also remove some old Apple specific rules which are no longer required.
  • use EXPORTED_TARGETS variable instead of explicit target names
  • update email in package.xml

1.7.15 (2013-03-12)

1.7.14 (2013-01-13)

  • add missing link library uuid (fix #4)

1.7.13 (2012-12-27)

  • move nodelet_topic_tools to separate package, fix unit tests

1.7.12 (2012-12-19 01:34)

1.7.11 (2012-12-19 00:58)

1.7.10 (2012-12-14)

  • add missing dep to catkin

1.7.9 (2012-12-13)

  • add missing downstream depend
  • switched from langs to message* packages

1.7.8 (2012-12-06)

  • updated catkin_package(DEPENDS)

1.7.7 (2012-11-01)

1.7.6 (2012-10-30)

  • fix catkin function order
  • clean up package.xml files

1.7.5 (2012-10-23)

1.7.4 (2012-10-08)

1.7.3 (2012-10-04)

1.7.2 (2012-10-03)

1.7.1 (2012-10-02)

  • adding nodelet_core metapackage and reving to 1.7.1

1.7.0 (2012-10-01)

  • fix dependencies
  • make it compile locally
  • first pass at catkinizing the stack
  • updated to latest pluginlib
  • updated usage of pluginlib according to updated REP 121
  • use updated pluginlib to auto-unload libraries when unloading nodelets
  • fixed issue #5144 on OS X lion
  • Commentary on who owns what among Loader, Nodelet, CallbackQueue and CallbackQueueManager.
  • Moved most of Loader\'s member variables into an opaque PIMPL struct so we can change things without breaking ABI.
  • All bond code moved to LoaderROS. Loader no longer needs to know about bond.
  • Removed CallbackQueue::disable(). Loader removes a nodelet\'s queues from the queue manager when unloading it, which is sufficient to prevent new callbacks for that nodelet getting added.
  • Removed some code and comments concerned with callbacks getting called after their nodelet\'s destruction. This can\'t actually happen anymore, since callbacks only fire if they can lock a weak_ptr to their parent nodelet.
  • Refactoring to streamline Nodelet back down to a simple plugin interface. It no longer knows about detail::CallbackQueue[Manager] or Bond; init() simply takes the single- and multi-threaded ros::CallbackQueueInterface* instead (defaulting to NULL). Loader owns the callback queues and bond for each nodelet. This makes it possible to use Nodelet without all the surrounding infrastructure.
  • Take Bond pointers as const-ref instead of value in Loader and Nodelet.
  • Added Loader constructor taking a boost::function object used as a factory for nodelet instances, replacing the default use of a pluginlib class loader. This is to support ROSGUI, which defines its specialized plugin interface as a subclass of Nodelet, and thus needs a different class loader.
  • Removed some debug code in Loader constructor.
  • \'nodelet load\' more reliably unloads the nodelet on exiting. In particular it intercepts XML-RPC shutdown command, used for example by \'rosnode kill\'.
  • Enabled error output when service calls fail abnormally.
  • Rewrote tracked_object logic to be clearer.
  • Have detail::CallbackQueue use a ros::VoidConstWPtr as the tracked object, which is now optional. More generic, and fixes test_nodelet which was broken by the last commit.
  • Fixed race conditions/deadlocks when unloading a nodelet. Now disable the nodelet\'s callback queues before deleting it. The queues have a WPtr to the nodelet, so any outstanding callbacks will get discarded.
  • ~Loader now stops callback manager threads before destroying the nodelets. Otherwise the worker threads could operate on nodelet data as/after it\'s destroyed.
  • Use ros::names::parentNamespace().
  • Cleaned scoped_ptr\'s out of ThreadInfo and updated its padding.
  • Made ThreadInfo::calling an atomic_count. This allows the manager thread to pick the queue with least work more accurately, and reduces contention b/c getSmallestQueue no longer needs to lock on queue_mutex_.
  • Minor code cleanup and finer locking in managerThread().
  • Actually pad ThreadInfo to a multiple of 64 bytes. Previous expression was wrongly wrapped in sizeof().
  • Instead of thread_info_.resize(num_threads), push each ThreadInfo on individually. With resize(), all threads ended up sharing the same queue_mutex and queue_cond. Doesn\'t seem to be much of a performance win though.
  • Added test instrumentation to CallbackQueueManager to track size of worker thread queues over time. Must be enabled at compilation time with -DNODELET_QUEUE_DEBUG.
  • nodelet patches for osx lion support from wjwwood
  • Added --no-bond option to nodelet loading to disable bonds.
  • updated platform tags
  • don\'t need to link against tinyxml directly
  • link against system tinyxml
  • Fix for #4855 This fix actually makes sense, but that it wasn\'t caught earlier doesn\'t. The construction of nodelet::Loader n(false) was creating the first node handle and letting it go out of scope, which was automagically calling ros::shutdown(), which is a dumb thing for ros::NodeHandle to do automagically on destruction.
  • Each nodelet now places its bonds on a custom callback queue
  • a script to list declared nodelets
  • real fix for #4460
  • patch for #4460
  • adding support for once, throttle, and filter features. With unit tests for all but the filters #4681
  • fix for #4609
  • MUX simplified by using a 8-connected null filters DeMUX has a specialization for message type (uses ros::Subscriber internally by default) Added rosdep for nodelet (uuid)
  • adding optional namespace aware constructor to nodelet loader. #4243 and fixing vestigial comments referencing Filters #4221
  • nodelet uses bond to handle crashes on the manager or the spawner end. #4221
  • locking in all cases
  • fix hang on CallbackQueueManager destruction (#4402)
  • better check for services
  • fix hanging tests and a hang on nodelet CallbackQueueManager destruction (#4082)
  • added a boost mutex
  • preventing nodelets from busywaiting
  • Added optional parameter num_worker_threads to nodelets.
  • Added Ubuntu platform tags to manifest
  • implemented nodelet unloading on shutdown
  • fixed a segfault on destroy
  • merging josh\'s branch from ticket #3875
  • adding usage
  • fancy new command line parsing for nodelets #3876
  • moving topic tools out of nodelet proper, removing rospy and message_filters dependencies from nodelet
  • doc updates
  • fixed a segfault
  • small changes (ptr->boost shared_ptr)
  • init guard
  • making nodehandles pointers to avoid default constructors
  • switching mt_spinner to be a pointer created on init so it\'s not trying to create a nodehandle at construction
  • cleanup
  • switching to cpp command based nodelet implementation as per API review
  • changes as per API review
  • enforcing unique name in manager
  • supporting argv passing on server side
  • getname return type for API review
  • adding MT Nodehandle creation methods and fixing up tutorials
  • passing parameters
  • we\'re always going to spin
  • added my_args in the service call
  • some changes as we discuss them during the API review
  • cleaning up private and public api elements
  • nodelet_internal_init is now private and a friend of NodeletLoader
  • nodelet API changes
  • COND rosconsole Nodelet wrappers working
  • adding multithreaded callback queue
  • removing unnecessary code after refactor
  • adding NODELET rosconsole wrappers, note init method is now void args
  • moving nodelet package into common trunk so I don\'t lose it in reorganization

Wiki Tutorials

See ROS Wiki Tutorials for more details.

Source Tutorials

Not currently indexed.

Dependant Packages

Name Repo Deps
bta_ros github-voxel-dot-at-bta_ros
uvc_camera github-ros-drivers-camera_umd
nodelet_tutorial_math github-ros-common_tutorials
cv_camera github-OTL-cv_camera
depthimage_to_laserscan github-ros-perception-depthimage_to_laserscan
gazebo_plugins github-ros-simulation-gazebo_ros_pkgs
gscam github-ros-drivers-gscam
hector_gazebo_thermal_camera github-tu-darmstadt-ros-pkg-hector_gazebo
hector_pose_estimation github-tu-darmstadt-ros-pkg-hector_localization
hector_elevation_mapping github-tu-darmstadt-ros-pkg-hector_navigation
hector_quadrotor_pose_estimation github-tu-darmstadt-ros-pkg-hector_quadrotor
hector_qrcode_detection github-tu-darmstadt-ros-pkg-hector_vision
hector_barrel_detection_nodelet github-tu-darmstadt-ros-pkg-hector_visualization
depth_image_proc github-ros-perception-image_pipeline
image_proc github-ros-perception-image_pipeline
image_publisher github-ros-perception-image_pipeline
image_rotate github-ros-perception-image_pipeline
image_view github-ros-perception-image_pipeline
stereo_image_proc github-ros-perception-image_pipeline
imu_transformer github-ros-perception-imu_pipeline
imu_filter_madgwick github-ccny-ros-pkg-imu_tools
jsk_data github-jsk-ros-pkg-jsk_common
jsk_topic_tools github-jsk-ros-pkg-jsk_common
imagesift github-jsk-ros-pkg-jsk_recognition
jsk_pcl_ros github-jsk-ros-pkg-jsk_recognition
jsk_pcl_ros_utils github-jsk-ros-pkg-jsk_recognition
jsk_perception github-jsk-ros-pkg-jsk_recognition
resized_image_transport github-jsk-ros-pkg-jsk_recognition
laser_proc github-ros-perception-laser_proc
libuvc_camera github-ros-drivers-libuvc_ros
nodelet_core github-ros-nodelet_core
nodelet_topic_tools github-ros-nodelet_core
test_nodelet github-ros-nodelet_core
test_nodelet_topic_tools github-ros-nodelet_core
octomap_server github-OctoMap-octomap_mapping
openni2_camera github-ros-drivers-openni2_camera
openni2_launch github-ros-drivers-openni2_camera
openni2_launch github-ros-drivers-openni2_launch
openni_camera github-ros-drivers-openni_camera
openni_launch github-ros-drivers-openni_camera
openni_launch github-ros-drivers-openni_launch
pcl_ros github-ros-perception-perception_pcl
phidgets_imu github-ccny-ros-pkg-phidgets_drivers
phidgets_imu github-ros-drivers-phidgets_drivers
phidgets_ir github-ccny-ros-pkg-phidgets_drivers
pointgrey_camera_driver github-ros-drivers-pointgrey_camera_driver
rgbd_launch github-ros-drivers-rgbd_launch
rqt_gui_cpp github-ros-visualization-rqt
rtabmap_ros github-introlab-rtabmap_ros
gmapping github-ros-perception-slam_gmapping
stdr_robot github-stdr-simulator-ros-pkg-stdr_simulator
stdr_server github-stdr-simulator-ros-pkg-stdr_simulator
ueye_cam github-anqixu-ueye_cam
urg_node github-ros-drivers-urg_node
video_stream_opencv github-ros-drivers-video_stream_opencv
visp_tracker github-lagadic-vision_visp
visp_ros github-lagadic-visp_ros
zbar_ros github-clearpathrobotics-zbar_ros
bebop_driver github-AutonomyLab-bebop_autonomy
bta_tof_driver github-voxel-dot-at-bta_tof_driver
evarobot_gazebo github-inomuh-evarobot_simulator
fetch_gazebo github-fetchrobotics-fetch_gazebo
swri_image_util github-swri-robotics-marti_common
swri_nodelet github-swri-robotics-marti_common
swri_transform_util github-swri-robotics-marti_common
novatel_gps_driver github-swri-robotics-novatel_gps_driver
opencv_apps github-ros-perception-opencv_apps
pointcloud_to_laserscan github-ros-perception-pointcloud_to_laserscan
laser_ortho_projector github-ccny-ros-pkg-scan_tools
laser_scan_matcher github-ccny-ros-pkg-scan_tools
laser_scan_sparsifier github-ccny-ros-pkg-scan_tools
laser_scan_splitter github-ccny-ros-pkg-scan_tools

Launch files

No launch files found

Messages

No message files found.

Plugins

No plugins found.

Recent questions tagged nodelet at answers.ros.org

Package Summary

Tags No category tags.
Version 1.9.16
License BSD
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/ros/nodelet_core.git
VCS Type git
VCS Version indigo-devel
Last Updated 2019-02-15
Dev Status MAINTAINED
Released RELEASED

Package Description

The nodelet package is designed to provide a way to run multiple algorithms in the same process with zero copy transport between algorithms. This package provides both the nodelet base class needed for implementing a nodelet, as well as the NodeletLoader class used for instantiating nodelets.

Additional Links

Maintainers

  • Mikael Arguedas

Authors

  • Tully Foote
  • Radu Bogdan Rusu
README
No README found. No README in repository either.
CHANGELOG

Changelog for package nodelet

Forthcoming

  • delay processing of queues until Nodelet::onInit() returns

1.9.16 (2018-04-27)

  • uuid dependency fixup (#74)
    • don\'t export uuid library
    • wrap for readability
  • Contributors: Mikael Arguedas

1.9.15 (2018-03-16)

  • use new pluginlib headers (#73)
  • Contributors: Mikael Arguedas

1.9.14 (2017-11-15)

  • declared_nodelets: continue on missing plugin xml (#70)
  • Contributors: Furushchev

1.9.13 (2017-10-27)

  • Drop unneeded forward declaration. (#68)
  • Contributors: Mike Purvis

1.9.12 (2017-08-04)

1.9.11 (2017-07-27)

  • Add getRemappingArgs method to nodelet to reuse it in subclass (#61)
  • remove trailing whitespaces (#62)
  • switch to package format 2 (#63)
  • Show pkg and manifest file with verbose option (#59)
  • Contributors: Kentaro Wada, Mikael Arguedas

1.9.10 (2017-03-27)

1.9.9 (2017-02-17)

  • drop unused dependency on tinyxml (#54)
  • Install the declared_nodelets script (#53)
  • Contributors: Dmitry Rozhkov, Kentaro Wada

1.9.8 (2016-11-15)

  • Fix bond handling during nodelet unloading (#51)

    • add test whether bond breaking on unload works (tests #50)

    * disable callback for broken bond when we are breaking it This avoids the nodelet::LoaderROS::unload() method to be called twice for the same nodelet, causing an error output. * use AsyncSpinner for nodelet load in order for the shutdown procedure to work During shutdown, the bonds still need to communicate their status in order for the nodelet to properly/cleanly/quickly unload. This requires the node to spin. - add test whether LoaderROS::unload() is called twice (tests #50)

  • Contributors: Daniel Seifert

1.9.7 (2016-10-24)

1.9.6 (2016-09-20)

1.9.5 (2016-06-22)

  • more sane debugging messages
  • Contributors: Daniel Stonier

1.9.4 (2016-03-15)

  • update maintainer
  • Contributors: Mikael Arguedas

1.9.3 (2015-08-05)

  • adding support for named nodelet loggers
  • nodelet loader: display error messages from both load attempts on failure
  • Contributors: Max Schwarz, Tully Foote

1.9.2 (2014-10-30)

  • Fix dependency version
  • Contributors: Esteve Fernandez

1.9.1 (2014-10-29)

  • Use FindUUID.cmake from cmake-modules to find the UUID libraries
  • nodelet: Loader: do not call impl->refresh_classes if not available
  • Contributors: Esteve Fernandez, Max Schwarz

1.9.0 (2014-06-16)

  • Fix initialization error handling (#13)
  • Contributors: Esteve Fernandez

1.8.3 (2014-05-08)

  • Add version to pluginlib dependency
  • nodelet: avoid breaking bond when unloading unknown nodelet
  • nodelet: refresh list of available classes if class is not found
  • Fixed missing header
  • Correctly check that there are enough arguments when nodelet is launched with the unload command
  • Exit if Loader::load returns failure in \"standalone\" mode instead of continuing to run
  • Contributors: Dirk Thomas, Esteve Fernandez, Forrest Voight, Gary Servin, Marcus Liebhardt, Mitchell Wills
  • fix missing header (#14)
  • fix check that there are enough arguments when nodelet is launched with the unload command (#12)
  • exit if Loader::load returns failure in \"standalone\" mode instead of continuing to run (#11)

1.8.2 (2014-01-07)

  • fix erasing bond when it breaks (#8)

1.8.0 (2013-07-11)

  • add missing archive/library/runtime destination for library
  • Export pluginlib as a transitive dependency Also remove some old Apple specific rules which are no longer required.
  • use EXPORTED_TARGETS variable instead of explicit target names
  • update email in package.xml

1.7.15 (2013-03-12)

1.7.14 (2013-01-13)

  • add missing link library uuid (fix #4)

1.7.13 (2012-12-27)

  • move nodelet_topic_tools to separate package, fix unit tests

1.7.12 (2012-12-19 01:34)

1.7.11 (2012-12-19 00:58)

1.7.10 (2012-12-14)

  • add missing dep to catkin

1.7.9 (2012-12-13)

  • add missing downstream depend
  • switched from langs to message* packages

1.7.8 (2012-12-06)

  • updated catkin_package(DEPENDS)

1.7.7 (2012-11-01)

1.7.6 (2012-10-30)

  • fix catkin function order
  • clean up package.xml files

1.7.5 (2012-10-23)

1.7.4 (2012-10-08)

1.7.3 (2012-10-04)

1.7.2 (2012-10-03)

1.7.1 (2012-10-02)

  • adding nodelet_core metapackage and reving to 1.7.1

1.7.0 (2012-10-01)

  • fix dependencies
  • make it compile locally
  • first pass at catkinizing the stack
  • updated to latest pluginlib
  • updated usage of pluginlib according to updated REP 121
  • use updated pluginlib to auto-unload libraries when unloading nodelets
  • fixed issue #5144 on OS X lion
  • Commentary on who owns what among Loader, Nodelet, CallbackQueue and CallbackQueueManager.
  • Moved most of Loader\'s member variables into an opaque PIMPL struct so we can change things without breaking ABI.
  • All bond code moved to LoaderROS. Loader no longer needs to know about bond.
  • Removed CallbackQueue::disable(). Loader removes a nodelet\'s queues from the queue manager when unloading it, which is sufficient to prevent new callbacks for that nodelet getting added.
  • Removed some code and comments concerned with callbacks getting called after their nodelet\'s destruction. This can\'t actually happen anymore, since callbacks only fire if they can lock a weak_ptr to their parent nodelet.
  • Refactoring to streamline Nodelet back down to a simple plugin interface. It no longer knows about detail::CallbackQueue[Manager] or Bond; init() simply takes the single- and multi-threaded ros::CallbackQueueInterface* instead (defaulting to NULL). Loader owns the callback queues and bond for each nodelet. This makes it possible to use Nodelet without all the surrounding infrastructure.
  • Take Bond pointers as const-ref instead of value in Loader and Nodelet.
  • Added Loader constructor taking a boost::function object used as a factory for nodelet instances, replacing the default use of a pluginlib class loader. This is to support ROSGUI, which defines its specialized plugin interface as a subclass of Nodelet, and thus needs a different class loader.
  • Removed some debug code in Loader constructor.
  • \'nodelet load\' more reliably unloads the nodelet on exiting. In particular it intercepts XML-RPC shutdown command, used for example by \'rosnode kill\'.
  • Enabled error output when service calls fail abnormally.
  • Rewrote tracked_object logic to be clearer.
  • Have detail::CallbackQueue use a ros::VoidConstWPtr as the tracked object, which is now optional. More generic, and fixes test_nodelet which was broken by the last commit.
  • Fixed race conditions/deadlocks when unloading a nodelet. Now disable the nodelet\'s callback queues before deleting it. The queues have a WPtr to the nodelet, so any outstanding callbacks will get discarded.
  • ~Loader now stops callback manager threads before destroying the nodelets. Otherwise the worker threads could operate on nodelet data as/after it\'s destroyed.
  • Use ros::names::parentNamespace().
  • Cleaned scoped_ptr\'s out of ThreadInfo and updated its padding.
  • Made ThreadInfo::calling an atomic_count. This allows the manager thread to pick the queue with least work more accurately, and reduces contention b/c getSmallestQueue no longer needs to lock on queue_mutex_.
  • Minor code cleanup and finer locking in managerThread().
  • Actually pad ThreadInfo to a multiple of 64 bytes. Previous expression was wrongly wrapped in sizeof().
  • Instead of thread_info_.resize(num_threads), push each ThreadInfo on individually. With resize(), all threads ended up sharing the same queue_mutex and queue_cond. Doesn\'t seem to be much of a performance win though.
  • Added test instrumentation to CallbackQueueManager to track size of worker thread queues over time. Must be enabled at compilation time with -DNODELET_QUEUE_DEBUG.
  • nodelet patches for osx lion support from wjwwood
  • Added --no-bond option to nodelet loading to disable bonds.
  • updated platform tags
  • don\'t need to link against tinyxml directly
  • link against system tinyxml
  • Fix for #4855 This fix actually makes sense, but that it wasn\'t caught earlier doesn\'t. The construction of nodelet::Loader n(false) was creating the first node handle and letting it go out of scope, which was automagically calling ros::shutdown(), which is a dumb thing for ros::NodeHandle to do automagically on destruction.
  • Each nodelet now places its bonds on a custom callback queue
  • a script to list declared nodelets
  • real fix for #4460
  • patch for #4460
  • adding support for once, throttle, and filter features. With unit tests for all but the filters #4681
  • fix for #4609
  • MUX simplified by using a 8-connected null filters DeMUX has a specialization for message type (uses ros::Subscriber internally by default) Added rosdep for nodelet (uuid)
  • adding optional namespace aware constructor to nodelet loader. #4243 and fixing vestigial comments referencing Filters #4221
  • nodelet uses bond to handle crashes on the manager or the spawner end. #4221
  • locking in all cases
  • fix hang on CallbackQueueManager destruction (#4402)
  • better check for services
  • fix hanging tests and a hang on nodelet CallbackQueueManager destruction (#4082)
  • added a boost mutex
  • preventing nodelets from busywaiting
  • Added optional parameter num_worker_threads to nodelets.
  • Added Ubuntu platform tags to manifest
  • implemented nodelet unloading on shutdown
  • fixed a segfault on destroy
  • merging josh\'s branch from ticket #3875
  • adding usage
  • fancy new command line parsing for nodelets #3876
  • moving topic tools out of nodelet proper, removing rospy and message_filters dependencies from nodelet
  • doc updates
  • fixed a segfault
  • small changes (ptr->boost shared_ptr)
  • init guard
  • making nodehandles pointers to avoid default constructors
  • switching mt_spinner to be a pointer created on init so it\'s not trying to create a nodehandle at construction
  • cleanup
  • switching to cpp command based nodelet implementation as per API review
  • changes as per API review
  • enforcing unique name in manager
  • supporting argv passing on server side
  • getname return type for API review
  • adding MT Nodehandle creation methods and fixing up tutorials
  • passing parameters
  • we\'re always going to spin
  • added my_args in the service call
  • some changes as we discuss them during the API review
  • cleaning up private and public api elements
  • nodelet_internal_init is now private and a friend of NodeletLoader
  • nodelet API changes
  • COND rosconsole Nodelet wrappers working
  • adding multithreaded callback queue
  • removing unnecessary code after refactor
  • adding NODELET rosconsole wrappers, note init method is now void args
  • moving nodelet package into common trunk so I don\'t lose it in reorganization

Wiki Tutorials

See ROS Wiki Tutorials for more details.

Source Tutorials

Not currently indexed.

Dependant Packages

Name Repo Deps
apriltags_ros github-RIVeR-Lab-apriltags_ros
bta_ros github-voxel-dot-at-bta_ros
camera1394 github-ros-drivers-camera1394
camera1394stereo github-srv-camera1394stereo
uvc_camera github-ktossell-camera_umd
capabilities github-osrf-capabilities
laser_scan_densifier github-ipa320-cob_driver
cob_3d_mapping_filters github-ipa320-cob_environment_perception
cob_3d_mapping_pipeline github-ipa320-cob_environment_perception
cob_3d_mapping_point_map github-ipa320-cob_environment_perception
cob_3d_registration github-ipa320-cob_environment_perception
cob_3d_segmentation github-ipa320-cob_environment_perception
cob_table_object_cluster github-ipa320-cob_environment_perception
cob_openni2_tracker github-ipa-rmb-cob_people_perception
cob_people_detection github-ipa-rmb-cob_people_perception
cob_cam3d_throttle github-ipa320-cob_perception_common
cob_image_flip github-ipa320-cob_perception_common
cob_bringup github-ipa320-cob_robots
nodelet_tutorial_math github-ros-common_tutorials
cv_camera github-OTL-cv_camera
depthimage_to_laserscan github-ros-perception-depthimage_to_laserscan
depthimage_to_laserscan github-ros2-depthimage_to_laserscan
freenect_camera github-ros-drivers-freenect_stack
freenect_launch github-ros-drivers-freenect_stack
gazebo_plugins github-ros-simulation-gazebo_ros_pkgs
gscam github-ros-drivers-gscam
hector_gazebo_thermal_camera github-tu-darmstadt-ros-pkg-hector_gazebo
hector_pose_estimation github-tu-darmstadt-ros-pkg-hector_localization
hector_elevation_mapping github-tu-darmstadt-ros-pkg-hector_navigation
hector_quadrotor_pose_estimation github-tu-darmstadt-ros-pkg-hector_quadrotor
hector_qrcode_detection github-tu-darmstadt-ros-pkg-hector_vision
hector_barrel_detection_nodelet github-tu-darmstadt-ros-pkg-hector_visualization
depth_image_proc github-ros-perception-image_pipeline
image_proc github-ros-perception-image_pipeline
image_publisher github-ros-perception-image_pipeline
image_rotate github-ros-perception-image_pipeline
image_view github-ros-perception-image_pipeline
stereo_image_proc github-ros-perception-image_pipeline
imu_transformer github-ros-perception-imu_pipeline
imu_filter_madgwick github-ccny-ros-pkg-imu_tools
industrial_extrinsic_cal github-ros-industrial-industrial_calibration
intrinsic_cal github-ros-industrial-industrial_calibration
rgbd_depth_correction github-ros-industrial-industrial_calibration
target_finder github-ros-industrial-industrial_calibration
jsk_data github-jsk-ros-pkg-jsk_common
jsk_topic_tools github-jsk-ros-pkg-jsk_common
imagesift github-jsk-ros-pkg-jsk_recognition
jsk_pcl_ros github-jsk-ros-pkg-jsk_recognition
jsk_pcl_ros_utils github-jsk-ros-pkg-jsk_recognition
jsk_perception github-jsk-ros-pkg-jsk_recognition
resized_image_transport github-jsk-ros-pkg-jsk_recognition
jsk_aero_startup github-jsk-ros-pkg-jsk_robot
jsk_robot_startup github-jsk-ros-pkg-jsk_robot
kobuki_auto_docking github-yujinrobot-kobuki
kobuki_bumper2pc github-yujinrobot-kobuki
kobuki_capabilities github-yujinrobot-kobuki
kobuki_controller_tutorial github-yujinrobot-kobuki
kobuki_node github-yujinrobot-kobuki
kobuki_random_walker github-yujinrobot-kobuki
kobuki_rapps github-yujinrobot-kobuki
kobuki_safety_controller github-yujinrobot-kobuki
kobuki_softnode github-yujinrobot-kobuki_soft
laser_proc github-ros-perception-laser_proc
libuvc_camera github-ktossell-libuvc_ros
nodelet_core github-ros-nodelet_core
nodelet_topic_tools github-ros-nodelet_core
test_nodelet github-ros-nodelet_core
test_nodelet_topic_tools github-ros-nodelet_core
octomap_server github-OctoMap-octomap_mapping
openni2_camera github-ros-drivers-openni2_camera
openni2_launch github-ros-drivers-openni2_camera
openni2_launch github-ros-drivers-openni2_launch
openni_camera github-ros-drivers-openni_camera
openni_launch github-ros-drivers-openni_camera
openni_launch github-ros-drivers-openni_launch
pcl_ros github-ros-perception-perception_pcl
phidgets_imu github-ccny-ros-pkg-phidgets_drivers
phidgets_imu github-ros-drivers-phidgets_drivers
phidgets_ir github-ccny-ros-pkg-phidgets_drivers
phidgets_ir github-ros-drivers-phidgets_drivers
pointgrey_camera_driver github-ros-drivers-pointgrey_camera_driver
prosilica_camera github-ros-drivers-prosilica_driver
rgbd_launch github-ros-drivers-rgbd_launch
rqt_gui_cpp github-ros-visualization-rqt
rtabmap_ros github-introlab-rtabmap_ros
segbot_sensors github-utexas-bwi-segbot
gmapping github-ros-perception-slam_gmapping
stdr_robot github-stdr-simulator-ros-pkg-stdr_simulator
stdr_server github-stdr-simulator-ros-pkg-stdr_simulator
turtlebot_follower github-turtlebot-turtlebot_apps
ueye_cam github-anqixu-ueye_cam
urg_node github-ros-drivers-urg_node
velodyne_driver github-ros-drivers-velodyne
velodyne_laserscan github-ros-drivers-velodyne
velodyne_pointcloud github-ros-drivers-velodyne
velodyne_height_map github-jack-oquin-velodyne_height_map
video_stream_opencv github-ros-drivers-video_stream_opencv
visp_tracker github-lagadic-vision_visp
visp_ros github-lagadic-visp_ros
yocs_cmd_vel_mux github-yujinrobot-yujin_ocs
yocs_diff_drive_pose_controller github-yujinrobot-yujin_ocs
yocs_safety_controller github-yujinrobot-yujin_ocs
yocs_velocity_smoother github-yujinrobot-yujin_ocs
zbar_ros github-clearpathrobotics-zbar_ros
zbar_ros github-ros-drivers-zbar_ros
astra_camera github-orbbec-ros_astra_camera
astra_launch github-orbbec-ros_astra_launch
bebop_driver github-AutonomyLab-bebop_autonomy
bta_tof_driver github-voxel-dot-at-bta_tof_driver
camera_pose_calibration github-delftrobotics-camera_pose_calibration
dataspeed_ulc_can bitbucket-DataspeedInc-dataspeed_ulc_ros
cliff_detector github-mdrwiega-depth_nav_tools
depth_sensor_pose github-mdrwiega-depth_nav_tools
laserscan_kinect github-mdrwiega-depth_nav_tools
evarobot_gazebo github-inomuh-evarobot_simulator
fetch_gazebo github-fetchrobotics-fetch_gazebo
flir_boson_usb github-astuff-flir_boson_usb
infinisoleil github-ncs-3d-sensing-infinisoleil
swri_image_util github-swri-robotics-marti_common
swri_nodelet github-swri-robotics-marti_common
swri_transform_util github-swri-robotics-marti_common
micros_mars_task_alloc github-liminglong-micros_mars_task_alloc
novatel_gps_driver github-swri-robotics-novatel_gps_driver
oculusprime github-xaxxontech-oculusprime_ros
rb_tracker github-tu-rbo-omip
opencv_apps github-ros-perception-opencv_apps
dbw_pacifica_can github-NewEagleRaptor-pacifica-dbw-ros
pointcloud_to_laserscan github-ros-perception-pointcloud_to_laserscan
rc_visard_driver github-roboception-rc_visard_ros
realsense_camera github-intel-ros-realsense
realsense_camera github-IntelRealSense-realsense-ros
roch_bringup github-SawYer-Robotics-roch
roch_follower github-SawYer-Robotics-roch
roch_navigation github-SawYer-Robotics-roch
roch_base github-SawYer-Robotics-roch_robot
roch_capabilities github-SawYer-Robotics-roch_robot
roch_sensorpc github-SawYer-Robotics-roch_robot
ros1_ros_cpptemplate github-pyros-dev-ros1_template
laser_ortho_projector github-ccny-ros-pkg-scan_tools
laser_scan_matcher github-ccny-ros-pkg-scan_tools
laser_scan_sparsifier github-ccny-ros-pkg-scan_tools
laser_scan_splitter github-ccny-ros-pkg-scan_tools
tango_ros_native github-Intermodalics-tango_ros
octomap_tensor_field github-zlt1991-tensor_field_nav
webrtc_ros github-RobotWebTools-webrtc_ros

Launch files

No launch files found

Messages

No message files found.

Plugins

No plugins found.

Recent questions tagged nodelet at answers.ros.org

Package Summary

Tags No category tags.
Version 1.8.6
License BSD
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/ros/nodelet_core.git
VCS Type git
VCS Version hydro-devel
Last Updated 2015-04-30
Dev Status MAINTAINED
Released RELEASED

Package Description

The nodelet package is designed to provide a way to run multiple algorithms in the same process with zero copy transport between algorithms. This package provides both the nodelet base class needed for implementing a nodelet, as well as the NodeletLoader class used for instantiating nodelets.

Additional Links

Maintainers

  • Esteve Fernandez

Authors

  • Tully Foote
  • Radu Bogdan Rusu
README
No README found. No README in repository either.
CHANGELOG

Changelog for package nodelet

1.8.6 (2014-10-30)

  • Fix dependency version
  • Contributors: Esteve Fernandez

1.8.5 (2014-10-29)

  • Use FindUUID.cmake from cmake-modules to find the UUID libraries
  • Contributors: Esteve Fernandez

1.8.4 (2014-06-16)

  • Unload nodelets if they fail to initialize Fixes #13

1.8.3 (2014-05-08)

  • refresh list of available classes and fix bond issue
  • fix missing header (#14)
  • fix check that there are enough arguments when nodelet is launched with the unload command (#12)
  • exit if Loader::load returns failure in \"standalone\" mode instead of continuing to run (#11)

1.8.2 (2014-01-07)

  • fix erasing bond when it breaks (#8)

1.8.0 (2013-07-11)

  • add missing archive/library/runtime destination for library
  • Export pluginlib as a transitive dependency Also remove some old Apple specific rules which are no longer required.
  • use EXPORTED_TARGETS variable instead of explicit target names
  • update email in package.xml

1.7.15 (2013-03-12)

1.7.14 (2013-01-13)

  • add missing link library uuid (fix #4)

1.7.13 (2012-12-27)

  • move nodelet_topic_tools to separate package, fix unit tests

1.7.12 (2012-12-19 01:34)

1.7.11 (2012-12-19 00:58)

1.7.10 (2012-12-14)

  • add missing dep to catkin

1.7.9 (2012-12-13)

  • add missing downstream depend
  • switched from langs to message* packages

1.7.8 (2012-12-06)

  • updated catkin_package(DEPENDS)

1.7.7 (2012-11-01)

1.7.6 (2012-10-30)

  • fix catkin function order
  • clean up package.xml files

1.7.5 (2012-10-23)

1.7.4 (2012-10-08)

1.7.3 (2012-10-04)

1.7.2 (2012-10-03)

1.7.1 (2012-10-02)

  • adding nodelet_core metapackage and reving to 1.7.1

1.7.0 (2012-10-01)

  • fix dependencies
  • make it compile locally
  • first pass at catkinizing the stack
  • updated to latest pluginlib
  • updated usage of pluginlib according to updated REP 121
  • use updated pluginlib to auto-unload libraries when unloading nodelets
  • fixed issue #5144 on OS X lion
  • Commentary on who owns what among Loader, Nodelet, CallbackQueue and CallbackQueueManager.
  • Moved most of Loader\'s member variables into an opaque PIMPL struct so we can change things without breaking ABI.
  • All bond code moved to LoaderROS. Loader no longer needs to know about bond.
  • Removed CallbackQueue::disable(). Loader removes a nodelet\'s queues from the queue manager when unloading it, which is sufficient to prevent new callbacks for that nodelet getting added.
  • Removed some code and comments concerned with callbacks getting called after their nodelet\'s destruction. This can\'t actually happen anymore, since callbacks only fire if they can lock a weak_ptr to their parent nodelet.
  • Refactoring to streamline Nodelet back down to a simple plugin interface. It no longer knows about detail::CallbackQueue[Manager] or Bond; init() simply takes the single- and multi-threaded ros::CallbackQueueInterface* instead (defaulting to NULL). Loader owns the callback queues and bond for each nodelet. This makes it possible to use Nodelet without all the surrounding infrastructure.
  • Take Bond pointers as const-ref instead of value in Loader and Nodelet.
  • Added Loader constructor taking a boost::function object used as a factory for nodelet instances, replacing the default use of a pluginlib class loader. This is to support ROSGUI, which defines its specialized plugin interface as a subclass of Nodelet, and thus needs a different class loader.
  • Removed some debug code in Loader constructor.
  • \'nodelet load\' more reliably unloads the nodelet on exiting. In particular it intercepts XML-RPC shutdown command, used for example by \'rosnode kill\'.
  • Enabled error output when service calls fail abnormally.
  • Rewrote tracked_object logic to be clearer.
  • Have detail::CallbackQueue use a ros::VoidConstWPtr as the tracked object, which is now optional. More generic, and fixes test_nodelet which was broken by the last commit.
  • Fixed race conditions/deadlocks when unloading a nodelet. Now disable the nodelet\'s callback queues before deleting it. The queues have a WPtr to the nodelet, so any outstanding callbacks will get discarded.
  • ~Loader now stops callback manager threads before destroying the nodelets. Otherwise the worker threads could operate on nodelet data as/after it\'s destroyed.
  • Use ros::names::parentNamespace().
  • Cleaned scoped_ptr\'s out of ThreadInfo and updated its padding.
  • Made ThreadInfo::calling an atomic_count. This allows the manager thread to pick the queue with least work more accurately, and reduces contention b/c getSmallestQueue no longer needs to lock on queue_mutex.
  • Minor code cleanup and finer locking in managerThread().
  • Actually pad ThreadInfo to a multiple of 64 bytes. Previous expression was wrongly wrapped in sizeof().
  • Instead of thread_info.resize(num_threads), push each ThreadInfo on individually. With resize(), all threads ended up sharing the same queue_mutex and queue_cond. Doesn\'t seem to be much of a performance win though.
  • Added test instrumentation to CallbackQueueManager to track size of worker thread queues over time. Must be enabled at compilation time with -DNODELET_QUEUE_DEBUG.
  • nodelet patches for osx lion support from wjwwood
  • Added --no-bond option to nodelet loading to disable bonds.
  • updated platform tags
  • don\'t need to link against tinyxml directly
  • link against system tinyxml
  • Fix for #4855 This fix actually makes sense, but that it wasn\'t caught earlier doesn\'t. The construction of nodelet::Loader n(false) was creating the first node handle and letting it go out of scope, which was automagically calling ros::shutdown(), which is a dumb thing for ros::NodeHandle to do automagically on destruction.
  • Each nodelet now places its bonds on a custom callback queue
  • a script to list declared nodelets
  • real fix for #4460
  • patch for #4460
  • adding support for once, throttle, and filter features. With unit tests for all but the filters #4681
  • fix for #4609
  • MUX simplified by using a 8-connected null filters DeMUX has a specialization for message type (uses ros::Subscriber internally by default) Added rosdep for nodelet (uuid)
  • adding optional namespace aware constructor to nodelet loader. #4243 and fixing vestigial comments referencing Filters #4221
  • nodelet uses bond to handle crashes on the manager or the spawner end. #4221
  • locking in all cases
  • fix hang on CallbackQueueManager destruction (#4402)
  • better check for services
  • fix hanging tests and a hang on nodelet CallbackQueueManager destruction (#4082)
  • added a boost mutex
  • preventing nodelets from busywaiting
  • Added optional parameter num_worker_threads to nodelets.
  • Added Ubuntu platform tags to manifest
  • implemented nodelet unloading on shutdown
  • fixed a segfault on destroy
  • merging josh\'s branch from ticket #3875
  • adding usage
  • fancy new command line parsing for nodelets #3876
  • moving topic tools out of nodelet proper, removing rospy and message_filters dependencies from nodelet
  • doc updates
  • fixed a segfault
  • small changes (ptr->boost shared_ptr)
  • init guard
  • making nodehandles pointers to avoid default constructors
  • switching mt_spinner to be a pointer created on init so it\'s not trying to create a nodehandle at construction
  • cleanup
  • switching to cpp command based nodelet implementation as per API review
  • changes as per API review
  • enforcing unique name in manager
  • supporting argv passing on server side
  • getname return type for API review
  • adding MT Nodehandle creation methods and fixing up tutorials
  • passing parameters
  • we\'re always going to spin
  • added my_args in the service call
  • some changes as we discuss them during the API review
  • cleaning up private and public api elements
  • nodelet_internal_init is now private and a friend of NodeletLoader
  • nodelet API changes
  • COND rosconsole Nodelet wrappers working
  • adding multithreaded callback queue
  • removing unnecessary code after refactor
  • adding NODELET rosconsole wrappers, note init method is now void args
  • moving nodelet package into common trunk so I don\'t lose it in reorganization

Wiki Tutorials

See ROS Wiki Tutorials for more details.

Source Tutorials

Not currently indexed.

Dependant Packages

Name Repo Deps
apriltags_ros github-RIVeR-Lab-apriltags_ros
bta_ros github-voxel-dot-at-bta_ros
camera1394 github-ros-drivers-camera1394
camera1394stereo github-srv-camera1394stereo
uvc_camera github-ktossell-camera_umd
capabilities github-osrf-capabilities
cob_camera_sensors github-ipa320-cob_driver
cob_3d_mapping_demonstrator github-ipa320-cob_environment_perception
cob_3d_mapping_filters github-ipa320-cob_environment_perception
cob_3d_mapping_pipeline github-ipa320-cob_environment_perception
cob_3d_mapping_point_map github-ipa320-cob_environment_perception
cob_3d_registration github-ipa320-cob_environment_perception
cob_3d_segmentation github-ipa320-cob_environment_perception
cob_table_object_cluster github-ipa320-cob_environment_perception
cob_openni2_tracker github-ipa-rmb-cob_people_perception
cob_people_detection github-ipa-rmb-cob_people_perception
cob_cam3d_throttle github-ipa320-cob_perception_common
cob_image_flip github-ipa320-cob_perception_common
cob_bringup github-ipa320-cob_robots
nodelet_tutorial_math github-ros-common_tutorials
cv_camera github-OTL-cv_camera
depthimage_to_laserscan github-ros-perception-depthimage_to_laserscan
depthimage_to_laserscan github-ros2-depthimage_to_laserscan
freenect_camera github-ros-drivers-freenect_stack
freenect_launch github-ros-drivers-freenect_stack
gazebo_plugins github-ros-simulation-gazebo_ros_pkgs
gscam github-ros-drivers-gscam
hector_gazebo_thermal_camera github-tu-darmstadt-ros-pkg-hector_gazebo
hector_pose_estimation github-tu-darmstadt-ros-pkg-hector_localization
hector_elevation_mapping github-tu-darmstadt-ros-pkg-hector_navigation
hector_quadrotor_pose_estimation github-tu-darmstadt-ros-pkg-hector_quadrotor
hector_qrcode_detection github-tu-darmstadt-ros-pkg-hector_vision
hector_barrel_detection_nodelet github-tu-darmstadt-ros-pkg-hector_visualization
depth_image_proc github-ros-perception-image_pipeline
image_proc github-ros-perception-image_pipeline
image_rotate github-ros-perception-image_pipeline
image_view github-ros-perception-image_pipeline
stereo_image_proc github-ros-perception-image_pipeline
imu_filter_madgwick github-ccny-ros-pkg-imu_tools
jsk_data github-jsk-ros-pkg-jsk_common
jsk_topic_tools github-jsk-ros-pkg-jsk_common
imagesift github-jsk-ros-pkg-jsk_recognition
jsk_pcl_ros github-jsk-ros-pkg-jsk_recognition
jsk_pcl_ros_utils github-jsk-ros-pkg-jsk_recognition
jsk_perception github-jsk-ros-pkg-jsk_recognition
resized_image_transport github-jsk-ros-pkg-jsk_recognition
jsk_aero_startup github-jsk-ros-pkg-jsk_robot
jsk_robot_startup github-jsk-ros-pkg-jsk_robot
kobuki_auto_docking github-yujinrobot-kobuki
kobuki_bumper2pc github-yujinrobot-kobuki
kobuki_controller_tutorial github-yujinrobot-kobuki
kobuki_node github-yujinrobot-kobuki
kobuki_random_walker github-yujinrobot-kobuki
kobuki_safety_controller github-yujinrobot-kobuki
kobuki_softnode github-yujinrobot-kobuki_soft
laser_proc github-ros-perception-laser_proc
libuvc_camera github-ktossell-libuvc_ros
nodelet_core github-ros-nodelet_core
nodelet_topic_tools github-ros-nodelet_core
test_nodelet github-ros-nodelet_core
test_nodelet_topic_tools github-ros-nodelet_core
octomap_server github-OctoMap-octomap_mapping
openni2_camera github-ros-drivers-openni2_camera
openni2_launch github-ros-drivers-openni2_launch
openni_camera github-ros-drivers-openni_camera
openni_launch github-ros-drivers-openni_launch
pcl_ros github-ros-perception-perception_pcl
pointcloud_to_laserscan github-ros-perception-perception_pcl
phidgets_imu github-ccny-ros-pkg-phidgets_drivers
phidgets_ir github-ccny-ros-pkg-phidgets_drivers
pointgrey_camera_driver github-ros-drivers-pointgrey_camera_driver
prosilica_camera github-ros-drivers-prosilica_driver
rgbd_launch github-ros-drivers-rgbd_launch
rosjava_messages github-rosjava-rosjava_messages
rqt_gui_cpp github-ros-visualization-rqt
rtabmap_ros github-introlab-rtabmap_ros
gmapping github-ros-perception-slam_gmapping
stdr_robot github-stdr-simulator-ros-pkg-stdr_simulator
stdr_server github-stdr-simulator-ros-pkg-stdr_simulator
turtlebot_follower github-turtlebot-turtlebot_apps
ueye_cam github-anqixu-ueye_cam
urg_node github-ros-drivers-urg_node
v4r_ellipses github-v4r-tuwien-v4r_ros
velodyne_driver github-ros-drivers-velodyne
velodyne_laserscan github-ros-drivers-velodyne
velodyne_pointcloud github-ros-drivers-velodyne
velodyne_height_map github-jack-oquin-velodyne_height_map
video_stream_opencv github-ros-drivers-video_stream_opencv
visp_tracker github-lagadic-vision_visp
visp_ros github-lagadic-visp_ros
yocs_cmd_vel_mux github-yujinrobot-yujin_ocs
yocs_diff_drive_pose_controller github-yujinrobot-yujin_ocs
yocs_velocity_smoother github-yujinrobot-yujin_ocs
zbar_ros github-clearpathrobotics-zbar_ros
zbar_ros github-ros-drivers-zbar_ros
swri_image_util github-swri-robotics-marti_common
swri_nodelet github-swri-robotics-marti_common
laser_ortho_projector github-ccny-ros-pkg-scan_tools
laser_scan_matcher github-ccny-ros-pkg-scan_tools
laser_scan_sparsifier github-ccny-ros-pkg-scan_tools
laser_scan_splitter github-ccny-ros-pkg-scan_tools

Launch files

No launch files found

Messages

No message files found.

Plugins

No plugins found.

Recent questions tagged nodelet at answers.ros.org