rcutils package from rcutils repo

rcutils

Package Summary

Tags No category tags.
Version 4.0.2
License Apache License 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/ros2/rcutils.git
VCS Type git
VCS Version galactic
Last Updated 2021-07-07
Dev Status MAINTAINED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

Package containing various utility types and functions for C

Additional Links

No additional links.

Maintainers

  • Chris Lalancette
  • Alejandro Hernandez Cordero

Authors

  • Karsten Knese

rcutils: ROS 2 C Utilities data structures

rcutils is a C API consisting of macros, functions, and data structures used through out the ROS 2 code base.

Quality Declaration

This package claims to be in the Quality Level 1 category, see the Quality Declaration for more details.

API

The API is a combination of parts:

  • Allocator concept, used to inject the allocating and deallocating methods into a function or type.
    • rcutils_allocator_t
    • rcutils/allocator.h
  • Command line interface utilities:
    • rcutils/cmdline_parser.h
  • Utilities for setting error states (error message, file, and line number) like strerror for errno:
    • rcutils/error_handling.h
  • Some basic filesystem utilities like checking for path existence, getting the cwd, etc...:
    • rcutils/filesystem.h
  • A C string find method:
    • rcutils_find()
    • rcutils_find_last()
    • rcutils/find.h
  • A convenient string formatting function, which takes a custom allocator:
    • rcutils_format_string()
    • rcutils/format_string.h
  • Functions for interfacing with process environment variables:
    • rcutils_get_env()
    • rcutils_get_home_dir()
    • rcutils_set_env()
    • rcutils/env.h
    • rcutils/get_env.h
  • Extensible logging macros:
    • Some examples (not exhaustive):
    • RCUTILS_LOG_DEBUG()
    • RCUTILS_LOG_INFO_NAMED()
    • RCUTILS_LOG_WARN_ONCE()
    • RCUTILS_LOG_ERROR_SKIPFIRST_NAMED()
    • rcutils/logging_macros.h
    • rcutils/logging.h
  • Some basic utilities to load, unload and get symbols from shared libraries at run-time.
    • rcutils/shared_library.h
  • A string replacement function which takes an allocator, based on http://creativeandcritical.net/str-replace-c:
    • rcutils_repl_str()
    • rcutils/repl_str.h
  • String splitting functions which take a custom allocator:
    • rcutils_split()
    • rcutils_split_last()
    • rcutils/split.h
  • A version of strdup which takes an allocator:
    • rcutils_strdup()
    • rcutils/strdup.h
  • Portable implementations of "get system time" and "get steady time":
    • rcutils_system_time_now()
    • rcutils_steady_time_now()
    • rcutils/time.h
  • Some useful data structures:
    • A "string array" data structure (analogous to std::vector<std::string>):
    • rcutils_string_array_t
    • rcutils/types/string_array.h
    • A "string-string map" data structure (analogous to std::map<std::string, std::string>)
    • rcutils_string_map_t
    • rcutils/types/string_map.h
  • Macros for controlling symbol visibility and linkage for this library:
    • rcutils/visibility_control.h
CHANGELOG

Changelog for package rcutils

4.0.2 (2021-04-12)

  • Declare dependency on libatomic (#338)
  • Contributors: Scott K Logan

4.0.1 (2021-04-06)

4.0.0 (2021-03-18)

  • Quiet down a warning in release mode. (#334)
  • Make the logging separate char an implementation detail. (#332)
  • Performance tests demo (#288)
  • Remove references of __xstat (#330)
  • Update the documentation to be more consistent. (#331)
  • Shorten some excessively long lines of CMake (#328)
  • qnx-support: include sys/link.h & avoid using dlinfo (#327)
  • QNX uses XSI-compliant (#326)
  • Contributors: Ahmed Sobhy, Chris Lalancette, Homalozoa X, Jorge Perez, Scott K Logan

3.1.0 (2021-01-25)

  • Add an API for directory iteration (#323)
  • Fix a leak during error handling in dir size calculation (#324)
  • Fix rcutils_shared_library_t path on Windows. (#322)
  • Check linker flags instead of assuming compiler correlation. (#321)
  • Improve shared library relative paths handling (#320)
  • Contributors: Michel Hidalgo, Scott K Logan

3.0.0 (2020-12-02)

  • Update rcutils_calculate_directory_size() to support recursion (#306)
  • Updating QD to QL 1 (#317)
  • Address unused return values found in scan-build (#316)
  • use one copy for continuous area instead of loop copy (#312)
  • use a better way to check whether string is empty (#315)
  • Use helper funciton to copy string (#314)
  • Disable a Windows platform warning. (#311)
  • Fix format of code description on document (#313)
  • Make sure to check the return values of rcutils APIs. (#302)
  • Contributors: Barry Xu, Chen Lihui, Chris Lalancette, Stephen Brawner

2.2.0 (2020-10-19)

  • Add rcutils_expand_user() to expand user directory in path (#298)
  • Update the maintainers. (#299)
  • Remove the temporary variable in RCUTILS_LOGGING_AUTOINIT (#290)
  • Contributors: Chris Lalancette, Christophe Bedard, Felix Endres

2.1.0 (2020-10-02)

  • Add RCUTILS_NO_FAULT_INJECTION() macro. (#295)
  • Inject faults on rcutils_get_env() and rcutils_set_env() call. (#292)
  • env.h and get_env.h docblock fixes (#291)
  • Introduce rcutils_strcasecmp, case insensitive string compare. (#280)
  • Stop using fprintf to avoid using file handles by changing as few lines of code as possible. (#289)
  • Defines QNX implementation for rcutils_get_platform_library_name (#287)
  • Contributors: Ahmed Sobhy, Ivan Santiago Paunovic, Michel Hidalgo, tomoya

2.0.0 (2020-08-28)

  • Add RCUTILS_CAN_SET_ERROR_MSG_AND_RETURN_WITH_ERROR_OF() macro. (#284) To fault inject error messages as well as return codes.
  • Change rcutils_fault_injection_set_count to use int64_t (#283)
  • adds QNX support for rcutils_get_executable_name (#282)
  • Add fault injection hooks to default allocator (#277)
  • Fault injection macros and functionality (plus example) (#264)
  • ensure -fPIC is used when building a static lib (#276)
  • Drop vsnprintf mocks entirely. (#275) Binary API is not portable across platforms and compilation config.
  • Fix vsnprintf mocks for Release builds. (#274)
  • Improve test coverage mocking system calls (#272)
  • Use mimick/mimick.h header (#273)
  • Add mock test for rcutils/strerror (#265)
  • Add compiler option -Wconversion and add explicit casts for conversions that may alter the value or change the sign (#263) See https://github.com/ros2/rcutils/pull/263#issuecomment-663252537.
  • Removed doxygen warnings (#266) (#268)
  • Removed doxygen warnings (#266)
  • Force _GNU_SOURCE if glibc is used. (#267)
  • Add parenthesis around the argument in time conversion macros defined in time.h (#261)
  • Contributors: Ahmed Sobhy, Alejandro Hern

Wiki Tutorials

See ROS Wiki Tutorials for more details.

Source Tutorials

Not currently indexed.

Dependant Packages

Name Repo Deps
control_toolbox github-ros-controls-control_toolbox
tf2 github-ros2-geometry2
image_proc github-ros-perception-image_pipeline
pluginlib github-ros-pluginlib
rviz_visual_testing_framework github-ros2-rviz
turtlebot3_node github-ROBOTIS-GIT-turtlebot3
composition github-ros2-demos
demo_nodes_cpp github-ros2-demos
logging_demo github-ros2-demos
quality_of_service_demo_cpp github-ros2-demos
topic_statistics_demo github-ros2-demos
fmi_adapter github-boschresearch-fmi_adapter
fmi_adapter github-boschresearch-fmi_adapter_ros2
rcl github-ros2-rcl
rcl_action github-ros2-rcl
rcl_lifecycle github-ros2-rcl
rcl_yaml_param_parser github-ros2-rcl
rcl_logging_interface github-ros2-rcl_logging
rcl_logging_log4cxx github-ros2-rcl_logging
rcl_logging_noop github-ros2-rcl_logging
rcl_logging_spdlog github-ros2-rcl_logging
rclc github-ros2-rclc
rclc_parameter github-ros2-rclc
rclcpp github-ros2-rclcpp
rclcpp_lifecycle github-ros2-rclcpp
rclpy github-ros2-rclpy
rcpputils github-ros2-rcpputils
rmw github-ros2-rmw
rmw_cyclonedds_cpp github-ros2-rmw_cyclonedds
rmw_fastrtps_cpp github-ros2-rmw_fastrtps
rmw_fastrtps_dynamic_cpp github-ros2-rmw_fastrtps
rmw_fastrtps_shared_cpp github-ros2-rmw_fastrtps
rmw_gurumdds_cpp github-ros2-rmw_gurumdds
rmw_gurumdds_shared_cpp github-ros2-rmw_gurumdds
rmw_implementation github-ros2-rmw_implementation
test_rmw_implementation github-ros2-rmw_implementation
ros1_bridge github-ros2-ros1_bridge
lgsvl_bridge github-lgsvl-ros2-lgsvl-bridge
rosbag2_compression github-ros2-rosbag2
rosbag2_compression_zstd github-ros2-rosbag2
rosbag2_cpp github-ros2-rosbag2
rosbag2_storage github-ros2-rosbag2
rosbag2_storage_default_plugins github-ros2-rosbag2
rosbag2_test_common github-ros2-rosbag2
rosbag2_bag_v2_plugins github-ros2-rosbag2_bag_v2
rosidl_runtime_c github-ros2-rosidl
rosidl_typesupport_c github-ros2-rosidl_typesupport
micro_ros_agent github-micro-ROS-micro-ROS-Agent
domain_bridge github-ros2-domain_bridge
rmw_connextdds_common github-ros2-rmw_connextdds
rmw_dds_common github-ros2-rmw_dds_common
stubborn_buddies github-open-rmf-stubborn_buddies
test_quality_of_service github-ros2-system_tests

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged rcutils at answers.ros.org

rcutils package from rcutils repo

rcutils

Package Summary

Tags No category tags.
Version 1.1.3
License Apache License 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/ros2/rcutils.git
VCS Type git
VCS Version foxy
Last Updated 2021-04-14
Dev Status MAINTAINED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

Package containing various utility types and functions for C

Additional Links

No additional links.

Maintainers

  • Chris Lalancette
  • Alejandro Hernandez Cordero

Authors

  • Karsten Knese

rcutils: ROS 2 C Utilities data structures

rcutils is a C API consisting of macros, functions, and data structures used through out the ROS 2 code base.

Quality Declaration

This package claims to be in the Quality Level 1 category, see the Quality Declaration for more details.

API

The API is a combination of parts:

  • Allocator concept, used to inject the allocating and deallocating methods into a function or type.
    • rcutils_allocator_t
    • rcutils/allocator.h
  • Command line interface utilities:
    • rcutils/cmdline_parser.h
  • Utilities for setting error states (error message, file, and line number) like strerror for errno:
    • rcutils/error_handling.h
  • Some basic filesystem utilities like checking for path existence, getting the cwd, etc...:
    • rcutils/filesystem.h
  • A C string find method:
    • rcutils_find()
    • rcutils_find_last()
    • rcutils/find.h
  • A convenient string formatting function, which takes a custom allocator:
    • rcutils_format_string()
    • rcutils/format_string.h
  • Functions for interfacing with process environment variables:
    • rcutils_get_env()
    • rcutils_get_home_dir()
    • rcutils_set_env()
    • rcutils/env.h
    • rcutils/get_env.h
  • Extensible logging macros:
    • Some examples (not exhaustive):
    • RCUTILS_LOG_DEBUG()
    • RCUTILS_LOG_INFO_NAMED()
    • RCUTILS_LOG_WARN_ONCE()
    • RCUTILS_LOG_ERROR_SKIPFIRST_NAMED()
    • rcutils/logging_macros.h
    • rcutils/logging.h
  • Some basic utilities to load, unload and get symbols from shared libraries at run-time.
    • rcutils/shared_library.h
  • A string replacement function which takes an allocator, based on http://creativeandcritical.net/str-replace-c:
    • rcutils_repl_str()
    • rcutils/repl_str.h
  • String splitting functions which take a custom allocator:
    • rcutils_split()
    • rcutils_split_last()
    • rcutils/split.h
  • A version of strdup which takes an allocator:
    • rcutils_strdup()
    • rcutils/strdup.h
  • Portable implementations of "get system time" and "get steady time":
    • rcutils_system_time_now()
    • rcutils_steady_time_now()
    • rcutils/time.h
  • Some useful data structures:
    • A "string array" data structure (analogous to std::vector<std::string>):
    • rcutils_string_array_t
    • rcutils/types/string_array.h
    • A "string-string map" data structure (analogous to std::map<std::string, std::string>)
    • rcutils_string_map_t
    • rcutils/types/string_map.h
  • Macros for controlling symbol visibility and linkage for this library:
    • rcutils/visibility_control.h
CHANGELOG

Changelog for package rcutils

1.1.3 (2021-04-14)

1.1.2 (2020-12-08)

  • Disable a Windows platform warning (#311) (#319)
  • Update QD to QL 1 (#318)
  • Add QNX support for rcutils_get_executable_name (#282) (#307)
  • DefinesQNX implementation for rcutils_get_platform_library_name (#287) (#309)
  • Update the maintainers (#299) (#300)
  • Contributors: Ahmed Sobhy, Alejandro Hern

Wiki Tutorials

See ROS Wiki Tutorials for more details.

Source Tutorials

Not currently indexed.

Dependant Packages

Name Repo Deps
control_toolbox github-ros-controls-control_toolbox
test_tf2 github-ros2-geometry2
tf2 github-ros2-geometry2
grid_map_pcl github-anybotics-grid_map
grid_map_pcl github-ethz-asl-grid_map
grid_map_ros github-anybotics-grid_map
grid_map_ros github-ethz-asl-grid_map
image_proc github-ros-perception-image_pipeline
pluginlib github-ros-pluginlib
turtlebot3_node github-ROBOTIS-GIT-turtlebot3
composition github-ros2-demos
demo_nodes_cpp github-ros2-demos
logging_demo github-ros2-demos
quality_of_service_demo_cpp github-ros2-demos
fmi_adapter github-boschresearch-fmi_adapter
fmi_adapter github-boschresearch-fmi_adapter_ros2
rcl github-ros2-rcl
rcl_action github-ros2-rcl
rcl_lifecycle github-ros2-rcl
rcl_yaml_param_parser github-ros2-rcl
rcl_logging_log4cxx github-ros2-rcl_logging
rcl_logging_noop github-ros2-rcl_logging
rcl_logging_spdlog github-ros2-rcl_logging
rclc github-ros2-rclc
rclcpp github-ros2-rclcpp
rclcpp_lifecycle github-ros2-rclcpp
rclpy github-ros2-rclpy
rcpputils github-ros2-rcpputils
rmw github-ros2-rmw
rmw_connext_cpp github-ros2-rmw_connext
rmw_connext_shared_cpp github-ros2-rmw_connext
rmw_cyclonedds_cpp github-ros2-rmw_cyclonedds
rmw_fastrtps_cpp github-ros2-rmw_fastrtps
rmw_fastrtps_dynamic_cpp github-ros2-rmw_fastrtps
rmw_fastrtps_shared_cpp github-ros2-rmw_fastrtps
rmw_gurumdds_cpp github-ros2-rmw_gurumdds
rmw_gurumdds_shared_cpp github-ros2-rmw_gurumdds
rmw_implementation github-ros2-rmw_implementation
test_rmw_implementation github-ros2-rmw_implementation
ros1_bridge github-ros2-ros1_bridge
lgsvl_bridge github-lgsvl-ros2-lgsvl-bridge
hardware_interface github-ros-controls-ros2_control
joint_state_broadcaster github-ros-controls-ros2_controllers
rosbag2_compression github-ros2-rosbag2
rosbag2_cpp github-ros2-rosbag2
rosbag2_storage github-ros2-rosbag2
rosbag2_storage_default_plugins github-ros2-rosbag2
rosbag2_test_common github-ros2-rosbag2
rosbag2_bag_v2_plugins github-ros2-rosbag2_bag_v2
rosidl_runtime_c github-ros2-rosidl
rosidl_typesupport_c github-ros2-rosidl_typesupport
rosidl_typesupport_connext_c github-ros2-rosidl_typesupport_connext
rosidl_typesupport_connext_cpp github-ros2-rosidl_typesupport_connext
micro_ros_agent github-micro-ROS-micro-ROS-Agent
rmw_connextdds_common github-ros2-rmw_connextdds
rmw_dds_common github-ros2-rmw_dds_common
stubborn_buddies github-open-rmf-stubborn_buddies
test_quality_of_service github-ros2-system_tests
rclada github-ada-ros-rclada
system_metrics_collector github-ros-tooling-system_metrics_collector

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged rcutils at answers.ros.org

rcutils package from rcutils repo

rcutils

Package Summary

Tags No category tags.
Version 4.0.2
License Apache License 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/ros2/rcutils.git
VCS Type git
VCS Version master
Last Updated 2021-08-09
Dev Status MAINTAINED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

Package containing various utility types and functions for C

Additional Links

No additional links.

Maintainers

  • Chris Lalancette
  • Alejandro Hernandez Cordero

Authors

  • Karsten Knese

rcutils: ROS 2 C Utilities data structures

rcutils is a C API consisting of macros, functions, and data structures used through out the ROS 2 code base.

Quality Declaration

This package claims to be in the Quality Level 1 category, see the Quality Declaration for more details.

API

The API is a combination of parts:

  • Allocator concept, used to inject the allocating and deallocating methods into a function or type.
    • rcutils_allocator_t
    • rcutils/allocator.h
  • Command line interface utilities:
    • rcutils/cmdline_parser.h
  • Utilities for setting error states (error message, file, and line number) like strerror for errno:
    • rcutils/error_handling.h
  • Some basic filesystem utilities like checking for path existence, getting the cwd, etc...:
    • rcutils/filesystem.h
  • A C string find method:
    • rcutils_find()
    • rcutils_find_last()
    • rcutils/find.h
  • A convenient string formatting function, which takes a custom allocator:
    • rcutils_format_string()
    • rcutils/format_string.h
  • Functions for interfacing with process environment variables:
    • rcutils_get_env()
    • rcutils_get_home_dir()
    • rcutils_set_env()
    • rcutils/env.h
    • rcutils/get_env.h
  • Extensible logging macros:
    • Some examples (not exhaustive):
    • RCUTILS_LOG_DEBUG()
    • RCUTILS_LOG_INFO_NAMED()
    • RCUTILS_LOG_WARN_ONCE()
    • RCUTILS_LOG_ERROR_SKIPFIRST_NAMED()
    • rcutils/logging_macros.h
    • rcutils/logging.h
  • Some basic utilities to load, unload and get symbols from shared libraries at run-time.
    • rcutils/shared_library.h
  • A string replacement function which takes an allocator, based on http://creativeandcritical.net/str-replace-c:
    • rcutils_repl_str()
    • rcutils/repl_str.h
  • String splitting functions which take a custom allocator:
    • rcutils_split()
    • rcutils_split_last()
    • rcutils/split.h
  • A version of strdup which takes an allocator:
    • rcutils_strdup()
    • rcutils/strdup.h
  • Portable implementations of "get system time" and "get steady time":
    • rcutils_system_time_now()
    • rcutils_steady_time_now()
    • rcutils/time.h
  • Some useful data structures:
    • A "string array" data structure (analogous to std::vector<std::string>):
    • rcutils_string_array_t
    • rcutils/types/string_array.h
    • A "string-string map" data structure (analogous to std::map<std::string, std::string>)
    • rcutils_string_map_t
    • rcutils/types/string_map.h
  • Macros for controlling symbol visibility and linkage for this library:
    • rcutils/visibility_control.h
CHANGELOG

Changelog for package rcutils

4.0.2 (2021-04-12)

  • Declare dependency on libatomic (#338)
  • Contributors: Scott K Logan

4.0.1 (2021-04-06)

4.0.0 (2021-03-18)

  • Quiet down a warning in release mode. (#334)
  • Make the logging separate char an implementation detail. (#332)
  • Performance tests demo (#288)
  • Remove references of __xstat (#330)
  • Update the documentation to be more consistent. (#331)
  • Shorten some excessively long lines of CMake (#328)
  • qnx-support: include sys/link.h & avoid using dlinfo (#327)
  • QNX uses XSI-compliant (#326)
  • Contributors: Ahmed Sobhy, Chris Lalancette, Homalozoa X, Jorge Perez, Scott K Logan

3.1.0 (2021-01-25)

  • Add an API for directory iteration (#323)
  • Fix a leak during error handling in dir size calculation (#324)
  • Fix rcutils_shared_library_t path on Windows. (#322)
  • Check linker flags instead of assuming compiler correlation. (#321)
  • Improve shared library relative paths handling (#320)
  • Contributors: Michel Hidalgo, Scott K Logan

3.0.0 (2020-12-02)

  • Update rcutils_calculate_directory_size() to support recursion (#306)
  • Updating QD to QL 1 (#317)
  • Address unused return values found in scan-build (#316)
  • use one copy for continuous area instead of loop copy (#312)
  • use a better way to check whether string is empty (#315)
  • Use helper funciton to copy string (#314)
  • Disable a Windows platform warning. (#311)
  • Fix format of code description on document (#313)
  • Make sure to check the return values of rcutils APIs. (#302)
  • Contributors: Barry Xu, Chen Lihui, Chris Lalancette, Stephen Brawner

2.2.0 (2020-10-19)

  • Add rcutils_expand_user() to expand user directory in path (#298)
  • Update the maintainers. (#299)
  • Remove the temporary variable in RCUTILS_LOGGING_AUTOINIT (#290)
  • Contributors: Chris Lalancette, Christophe Bedard, Felix Endres

2.1.0 (2020-10-02)

  • Add RCUTILS_NO_FAULT_INJECTION() macro. (#295)
  • Inject faults on rcutils_get_env() and rcutils_set_env() call. (#292)
  • env.h and get_env.h docblock fixes (#291)
  • Introduce rcutils_strcasecmp, case insensitive string compare. (#280)
  • Stop using fprintf to avoid using file handles by changing as few lines of code as possible. (#289)
  • Defines QNX implementation for rcutils_get_platform_library_name (#287)
  • Contributors: Ahmed Sobhy, Ivan Santiago Paunovic, Michel Hidalgo, tomoya

2.0.0 (2020-08-28)

  • Add RCUTILS_CAN_SET_ERROR_MSG_AND_RETURN_WITH_ERROR_OF() macro. (#284) To fault inject error messages as well as return codes.
  • Change rcutils_fault_injection_set_count to use int64_t (#283)
  • adds QNX support for rcutils_get_executable_name (#282)
  • Add fault injection hooks to default allocator (#277)
  • Fault injection macros and functionality (plus example) (#264)
  • ensure -fPIC is used when building a static lib (#276)
  • Drop vsnprintf mocks entirely. (#275) Binary API is not portable across platforms and compilation config.
  • Fix vsnprintf mocks for Release builds. (#274)
  • Improve test coverage mocking system calls (#272)
  • Use mimick/mimick.h header (#273)
  • Add mock test for rcutils/strerror (#265)
  • Add compiler option -Wconversion and add explicit casts for conversions that may alter the value or change the sign (#263) See https://github.com/ros2/rcutils/pull/263#issuecomment-663252537.
  • Removed doxygen warnings (#266) (#268)
  • Removed doxygen warnings (#266)
  • Force _GNU_SOURCE if glibc is used. (#267)
  • Add parenthesis around the argument in time conversion macros defined in time.h (#261)
  • Contributors: Ahmed Sobhy, Alejandro Hern

Wiki Tutorials

See ROS Wiki Tutorials for more details.

Source Tutorials

Not currently indexed.

Dependant Packages

Name Repo Deps
control_toolbox github-ros-controls-control_toolbox
tf2 github-ros2-geometry2
image_proc github-ros-perception-image_pipeline
pluginlib github-ros-pluginlib
rviz_visual_testing_framework github-ros2-rviz
composition github-ros2-demos
demo_nodes_cpp github-ros2-demos
logging_demo github-ros2-demos
quality_of_service_demo_cpp github-ros2-demos
topic_statistics_demo github-ros2-demos
fmi_adapter github-boschresearch-fmi_adapter
message_filters github-ros2-message_filters
rcl github-ros2-rcl
rcl_action github-ros2-rcl
rcl_lifecycle github-ros2-rcl
rcl_yaml_param_parser github-ros2-rcl
rcl_logging_interface github-ros2-rcl_logging
rcl_logging_noop github-ros2-rcl_logging
rcl_logging_spdlog github-ros2-rcl_logging
rclc github-ros2-rclc
rclc_parameter github-ros2-rclc
rclcpp github-ros2-rclcpp
rclcpp_lifecycle github-ros2-rclcpp
rclpy github-ros2-rclpy
rcpputils github-ros2-rcpputils
rmw github-ros2-rmw
rmw_cyclonedds_cpp github-ros2-rmw_cyclonedds
rmw_fastrtps_cpp github-ros2-rmw_fastrtps
rmw_fastrtps_dynamic_cpp github-ros2-rmw_fastrtps
rmw_fastrtps_shared_cpp github-ros2-rmw_fastrtps
rmw_gurumdds_cpp github-ros2-rmw_gurumdds
rmw_gurumdds_shared_cpp github-ros2-rmw_gurumdds
rmw_implementation github-ros2-rmw_implementation
test_rmw_implementation github-ros2-rmw_implementation
ros1_bridge github-ros2-ros1_bridge
hardware_interface github-ros-controls-ros2_control
joint_state_broadcaster github-ros-controls-ros2_controllers
rosbag2_compression github-ros2-rosbag2
rosbag2_compression_zstd github-ros2-rosbag2
rosbag2_cpp github-ros2-rosbag2
rosbag2_storage github-ros2-rosbag2
rosbag2_storage_default_plugins github-ros2-rosbag2
rosbag2_test_common github-ros2-rosbag2
rosbag2_bag_v2_plugins github-ros2-rosbag2_bag_v2
rosidl_generator_c github-ros2-rosidl
rosidl_runtime_c github-ros2-rosidl
rosidl_typesupport_c github-ros2-rosidl_typesupport
domain_bridge github-ros2-domain_bridge
rmw_connextdds_common github-ros2-rmw_connextdds
rmw_dds_common github-ros2-rmw_dds_common
stubborn_buddies github-open-rmf-stubborn_buddies
test_quality_of_service github-ros2-system_tests

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged rcutils at answers.ros.org

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

rcutils package from rcutils repo

rcutils

Package Summary

Tags No category tags.
Version 0.4.0
License Apache License 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/ros2/rcutils.git
VCS Type git
VCS Version ardent
Last Updated 2017-12-09
Dev Status MAINTAINED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

Package containing various utility types and functions for C

Additional Links

No additional links.

Maintainers

  • Karsten Knese

Authors

No additional authors.

rcutils: ROS 2 C Utilities data structures

rcutils is a C API consisting of macros, functions, and data structures used through out the ROS 2 code base.

The API is a combination of parts:

  • Allocator concept, used to inject the allocating and deallocating methods into a function or type.
    • rcutils_allocator_t
    • rcutils/allocator.h
  • Command line interface utilities:
    • rcutils/cmdline_parser.h
  • Utilities for setting error states (error message, file, and line number) like strerror for errno:
    • rcutils/error_handling.h
  • Some basic filesystem utilities like checking for path existence, getting the cwd, etc...:
    • rcutils/filesystem.h
  • A C string find method:
    • rcutils_find()
    • rcutils_find_last()
    • rcutils/find.h
  • A convenient string formatting function, which takes a custom allocator:
    • rcutils_format_string()
    • rcutils/format_string.h
  • A function to get an environment variable's value:
    • rcutils_get_env()
    • rcutils/get_env.h
  • Extensible logging macros:
    • Some examples (not exhaustive):
    • RCUTILS_LOG_DEBUG()
    • RCUTILS_LOG_INFO_NAMED()
    • RCUTILS_LOG_WARN_ONCE()
    • RCUTILS_LOG_ERROR_SKIPFIRST_NAMED()
    • rcutils/logging_macros.h
    • rcutils/logging.h
  • A string replacement function which takes an allocator, based on http://creativeandcritical.net/str-replace-c:
    • rcutils_repl_str()
    • rcutils/repl_str.h
  • String splitting functions which take a custom allocator:
    • rcutils_split()
    • rcutils_split_last()
    • rcutils/split.h
  • A version of strdup which takes an allocator:
    • rcutils_strdup()
    • rcutils/strdup.h
  • Portable implementations of "get system time" and "get steady time":
    • rcutils_system_time_now()
    • rcutils_steady_time_now()
    • rcutils/time.h
  • Some useful data structures:
    • A "string array" data structure (analogous to std::vector<std::string>):
    • rcutils_string_array_t
    • rcutils/types/string_array.h
    • A "string-string map" data structure (analogous to std::map<std::string, std::string>)
    • rcutils_string_map_t
    • rcutils/types/string_map.h
  • Macros for controlling symbol visibility and linkage for this library:
    • rcutils/visibility_control.h
CHANGELOG
No CHANGELOG found.

Wiki Tutorials

See ROS Wiki Tutorials for more details.

Source Tutorials

Not currently indexed.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged rcutils at answers.ros.org

rcutils package from rcutils repo

rcutils

Package Summary

Tags No category tags.
Version 0.5.1
License Apache License 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/ros2/rcutils.git
VCS Type git
VCS Version bouncy
Last Updated 2018-06-28
Dev Status MAINTAINED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

Package containing various utility types and functions for C

Additional Links

No additional links.

Maintainers

  • Karsten Knese

Authors

No additional authors.

rcutils: ROS 2 C Utilities data structures

rcutils is a C API consisting of macros, functions, and data structures used through out the ROS 2 code base.

The API is a combination of parts:

  • Allocator concept, used to inject the allocating and deallocating methods into a function or type.
    • rcutils_allocator_t
    • rcutils/allocator.h
  • Command line interface utilities:
    • rcutils/cmdline_parser.h
  • Utilities for setting error states (error message, file, and line number) like strerror for errno:
    • rcutils/error_handling.h
  • Some basic filesystem utilities like checking for path existence, getting the cwd, etc...:
    • rcutils/filesystem.h
  • A C string find method:
    • rcutils_find()
    • rcutils_find_last()
    • rcutils/find.h
  • A convenient string formatting function, which takes a custom allocator:
    • rcutils_format_string()
    • rcutils/format_string.h
  • A function to get an environment variable's value:
    • rcutils_get_env()
    • rcutils/get_env.h
  • Extensible logging macros:
    • Some examples (not exhaustive):
    • RCUTILS_LOG_DEBUG()
    • RCUTILS_LOG_INFO_NAMED()
    • RCUTILS_LOG_WARN_ONCE()
    • RCUTILS_LOG_ERROR_SKIPFIRST_NAMED()
    • rcutils/logging_macros.h
    • rcutils/logging.h
  • A string replacement function which takes an allocator, based on http://creativeandcritical.net/str-replace-c:
    • rcutils_repl_str()
    • rcutils/repl_str.h
  • String splitting functions which take a custom allocator:
    • rcutils_split()
    • rcutils_split_last()
    • rcutils/split.h
  • A version of strdup which takes an allocator:
    • rcutils_strdup()
    • rcutils/strdup.h
  • Portable implementations of "get system time" and "get steady time":
    • rcutils_system_time_now()
    • rcutils_steady_time_now()
    • rcutils/time.h
  • Some useful data structures:
    • A "string array" data structure (analogous to std::vector<std::string>):
    • rcutils_string_array_t
    • rcutils/types/string_array.h
    • A "string-string map" data structure (analogous to std::map<std::string, std::string>)
    • rcutils_string_map_t
    • rcutils/types/string_map.h
  • Macros for controlling symbol visibility and linkage for this library:
    • rcutils/visibility_control.h
CHANGELOG

Changelog for package rcutils

0.5.0 (2018-06-20)

  • Audited use of malloc/realloc/calloc/free to make sure it always goes through an rcutils_allocator_t (#102)
  • Added ability to include a timestamp when a console logging message happens (#85)
  • Updated to use new memory_tools from osrf_testing_tools_cpp (#101)
  • Fixed a possible bug by preventing the default logger\'s level from being unset (#106)
  • Updated to use launch.legacy instead of launch (now used for new launch system) (#105)
  • Fixed a memory check issue in split.c (#104)
  • Added RCUTILS_CONSOLE_STDOUT_LINE_BUFFERED to control flusing of output from the default output handler of the logging macros. (#98)
  • Can now control shared/static linking via BUILD_SHARED_LIBS (#94)
  • Addressed some MISRA C compliance issues (#91)
  • Fixed a steady time overflow issue (#87)
  • Changed rcutils_time_point_value_t type from uint64_t to int64_t (#84)
  • Fixed out-of-bounds read issue (#83)
  • Contributors: Dirk Thomas, Ethan Gao, Michael Carroll, Mikael Arguedas, Sagnik Basu, Shane Loretz, William Woodall, cshen, dhood, serge-nikulin

Wiki Tutorials

See ROS Wiki Tutorials for more details.

Source Tutorials

Not currently indexed.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged rcutils at answers.ros.org

rcutils package from rcutils repo

rcutils

Package Summary

Tags No category tags.
Version 0.6.2
License Apache License 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/ros2/rcutils.git
VCS Type git
VCS Version crystal
Last Updated 2019-02-08
Dev Status MAINTAINED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

Package containing various utility types and functions for C

Additional Links

No additional links.

Maintainers

  • Karsten Knese

Authors

No additional authors.

rcutils: ROS 2 C Utilities data structures

rcutils is a C API consisting of macros, functions, and data structures used through out the ROS 2 code base.

The API is a combination of parts:

  • Allocator concept, used to inject the allocating and deallocating methods into a function or type.
    • rcutils_allocator_t
    • rcutils/allocator.h
  • Command line interface utilities:
    • rcutils/cmdline_parser.h
  • Utilities for setting error states (error message, file, and line number) like strerror for errno:
    • rcutils/error_handling.h
  • Some basic filesystem utilities like checking for path existence, getting the cwd, etc...:
    • rcutils/filesystem.h
  • A C string find method:
    • rcutils_find()
    • rcutils_find_last()
    • rcutils/find.h
  • A convenient string formatting function, which takes a custom allocator:
    • rcutils_format_string()
    • rcutils/format_string.h
  • A function to get an environment variable's value:
    • rcutils_get_env()
    • rcutils/get_env.h
  • Extensible logging macros:
    • Some examples (not exhaustive):
    • RCUTILS_LOG_DEBUG()
    • RCUTILS_LOG_INFO_NAMED()
    • RCUTILS_LOG_WARN_ONCE()
    • RCUTILS_LOG_ERROR_SKIPFIRST_NAMED()
    • rcutils/logging_macros.h
    • rcutils/logging.h
  • A string replacement function which takes an allocator, based on http://creativeandcritical.net/str-replace-c:
    • rcutils_repl_str()
    • rcutils/repl_str.h
  • String splitting functions which take a custom allocator:
    • rcutils_split()
    • rcutils_split_last()
    • rcutils/split.h
  • A version of strdup which takes an allocator:
    • rcutils_strdup()
    • rcutils/strdup.h
  • Portable implementations of "get system time" and "get steady time":
    • rcutils_system_time_now()
    • rcutils_steady_time_now()
    • rcutils/time.h
  • Some useful data structures:
    • A "string array" data structure (analogous to std::vector<std::string>):
    • rcutils_string_array_t
    • rcutils/types/string_array.h
    • A "string-string map" data structure (analogous to std::map<std::string, std::string>)
    • rcutils_string_map_t
    • rcutils/types/string_map.h
  • Macros for controlling symbol visibility and linkage for this library:
    • rcutils/visibility_control.h
CHANGELOG

Changelog for package rcutils

0.6.2 (2019-02-07)

  • Adding an ArrayList and HashMap implementation to rcutils (#131)
  • Change uncrustify max line length to 0 (#133)
  • Contributors: Jacob Perron, Nick Burek

0.6.1 (2018-12-06)

  • Logging (#127)
  • fixes to support including in c++ and fetch_add (#129)
  • reiterate over char array (#130)
  • add rcutils_unsigned_char_array_t (#125)
  • Contributors: Karsten Knese, Nick Burek, William Woodall

0.6.0 (2018-11-16)

  • Added rcutils_to_native_path function (#119)
  • Moved stdatomic helper to rcutils (#126)
  • Fixed warning in release build due to assert (#124)
  • Updated to avoid dynamic memory allocation during error handling (#121)
  • Added macro semicolons (#120)
  • Added LL suffix to avoid c4307 (#118)
  • Updated to use the same allocator to free allocated message (#115)
  • Renamed rcutils_serialized_message -> rcutils_char_array (#111)
  • Moved serialized_message from rmw (#110)
  • Updated to verify that the requested allocation size does not overflow. (#109)
  • Contributors: Chris Lalancette, Jacob Perron, Karsten Knese, Mikael Arguedas, Ruffin, Shane Loretz, Todd Malsbary, William Woodall

0.5.1 (2018-06-28)

  • Removed redundant stat() call (#108)

0.5.0 (2018-06-20)

  • Audited use of malloc/realloc/calloc/free to make sure it always goes through an rcutils_allocator_t (#102)
  • Added ability to include a timestamp when a console logging message happens (#85)
  • Updated to use new memory_tools from osrf_testing_tools_cpp (#101)
  • Fixed a possible bug by preventing the default logger\'s level from being unset (#106)
  • Updated to use launch.legacy instead of launch (now used for new launch system) (#105)
  • Fixed a memory check issue in split.c (#104)
  • Added RCUTILS_CONSOLE_STDOUT_LINE_BUFFERED to control flusing of output from the default output handler of the logging macros. (#98)
  • Can now control shared/static linking via BUILD_SHARED_LIBS (#94)
  • Addressed some MISRA C compliance issues (#91)
  • Fixed a steady time overflow issue (#87)
  • Changed rcutils_time_point_value_t type from uint64_t to int64_t (#84)
  • Fixed out-of-bounds read issue (#83)
  • Contributors: Dirk Thomas, Ethan Gao, Michael Carroll, Mikael Arguedas, Sagnik Basu, Shane Loretz, William Woodall, cshen, dhood, serge-nikulin

Wiki Tutorials

See ROS Wiki Tutorials for more details.

Source Tutorials

Not currently indexed.

Dependant Packages

Name Repo Deps
image_proc github-ros-perception-image_pipeline
pluginlib github-ros-pluginlib
composition github-ros2-demos
demo_nodes_cpp github-ros2-demos
logging_demo github-ros2-demos
rcl github-ros2-rcl
rcl_action github-ros2-rcl
rcl_lifecycle github-ros2-rcl
rcl_yaml_param_parser github-ros2-rcl
rclpy github-ros2-rclpy
rmw github-ros2-rmw
rmw_connext_cpp github-ros2-rmw_connext
rmw_connext_shared_cpp github-ros2-rmw_connext
rmw_fastrtps_cpp github-ros2-rmw_fastrtps
rmw_fastrtps_dynamic_cpp github-ros2-rmw_fastrtps
rmw_fastrtps_shared_cpp github-ros2-rmw_fastrtps
rmw_gurumdds_cpp github-ros2-rmw_gurumdds
rmw_gurumdds_shared_cpp github-ros2-rmw_gurumdds
rmw_implementation github-ros2-rmw_implementation
rmw_opensplice_cpp github-ros2-rmw_opensplice
ros1_bridge github-ros2-ros1_bridge
controller_parameter_server github-ros-controls-ros2_control
hardware_interface github-ros-controls-ros2_control
test_robot_hardware github-ros-controls-ros2_control
rosbag2 github-ros2-rosbag2
rosbag2_bag_v2_plugins github-ros2-rosbag2
rosbag2_converter_default_plugins github-ros2-rosbag2
rosbag2_storage github-ros2-rosbag2
rosbag2_storage_default_plugins github-ros2-rosbag2
rosbag2_test_common github-ros2-rosbag2
rosidl_typesupport_connext_c github-ros2-rosidl_typesupport_connext
rosidl_typesupport_connext_cpp github-ros2-rosidl_typesupport_connext
rosidl_typesupport_gurumdds_c github-ros2-rosidl_typesupport_gurumdds
rosidl_typesupport_gurumdds_cpp github-ros2-rosidl_typesupport_gurumdds
ets_cpp_client github-brunodmt-ets_ros2
ets_plugin github-brunodmt-ets_ros2

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged rcutils at answers.ros.org

rcutils package from rcutils repo

rcutils

Package Summary

Tags No category tags.
Version 0.8.5
License Apache License 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/ros2/rcutils.git
VCS Type git
VCS Version eloquent
Last Updated 2020-12-04
Dev Status MAINTAINED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

Package containing various utility types and functions for C

Additional Links

No additional links.

Maintainers

  • Chris Lalancette
  • Alejandro Hernandez Cordero

Authors

  • Karsten Knese

rcutils: ROS 2 C Utilities data structures

rcutils is a C API consisting of macros, functions, and data structures used through out the ROS 2 code base.

The API is a combination of parts:

  • Allocator concept, used to inject the allocating and deallocating methods into a function or type.
    • rcutils_allocator_t
    • rcutils/allocator.h
  • Command line interface utilities:
    • rcutils/cmdline_parser.h
  • Utilities for setting error states (error message, file, and line number) like strerror for errno:
    • rcutils/error_handling.h
  • Some basic filesystem utilities like checking for path existence, getting the cwd, etc...:
    • rcutils/filesystem.h
  • A C string find method:
    • rcutils_find()
    • rcutils_find_last()
    • rcutils/find.h
  • A convenient string formatting function, which takes a custom allocator:
    • rcutils_format_string()
    • rcutils/format_string.h
  • A function to get an environment variable's value:
    • rcutils_get_env()
    • rcutils/get_env.h
  • Extensible logging macros:
    • Some examples (not exhaustive):
    • RCUTILS_LOG_DEBUG()
    • RCUTILS_LOG_INFO_NAMED()
    • RCUTILS_LOG_WARN_ONCE()
    • RCUTILS_LOG_ERROR_SKIPFIRST_NAMED()
    • rcutils/logging_macros.h
    • rcutils/logging.h
  • A string replacement function which takes an allocator, based on http://creativeandcritical.net/str-replace-c:
    • rcutils_repl_str()
    • rcutils/repl_str.h
  • String splitting functions which take a custom allocator:
    • rcutils_split()
    • rcutils_split_last()
    • rcutils/split.h
  • A version of strdup which takes an allocator:
    • rcutils_strdup()
    • rcutils/strdup.h
  • Portable implementations of "get system time" and "get steady time":
    • rcutils_system_time_now()
    • rcutils_steady_time_now()
    • rcutils/time.h
  • Some useful data structures:
    • A "string array" data structure (analogous to std::vector<std::string>):
    • rcutils_string_array_t
    • rcutils/types/string_array.h
    • A "string-string map" data structure (analogous to std::map<std::string, std::string>)
    • rcutils_string_map_t
    • rcutils/types/string_map.h
  • Macros for controlling symbol visibility and linkage for this library:
    • rcutils/visibility_control.h
CHANGELOG

Changelog for package rcutils

0.8.5 (2020-12-04)

  • Update the maintainers. (#299)
  • check and link against libatomic (#172) (#178) (#217)
  • Contributors: Chris Lalancette, Shane Loretz

0.8.4 (2019-11-18)

  • fix type of logging feature keys (#192)
  • Contributors: Dirk Thomas

0.8.3 (2019-11-12)

  • Fix uninitialized handle error (#187)
  • Use Win32 wrapper around 64 bit atomic operations (#186)
  • Contributors: Sean Kelly

0.8.2 (2019-10-23)

  • Specify working directory for filesystem test (#185)
  • Make use of time source type for throttling logs (#183)
  • Remove ready_fn - will be replaced by ReadyToTest() (#184)
  • Contributors: Brian Marchi, Dan Rose, Peter Baughman

0.8.1 (2019-10-03)

  • Implement rcutils_mkdir. (#166)
  • Contributors: Chris Lalancette

0.8.0 (2019-09-24)

  • Make g_rcutils_log_severity_names public and immutable. (#180)
  • use _WIN32 instead of WIN32 (#179)
  • Revert \"check and link against libatomic (#172)\" (#177)
  • check and link against libatomic (#172)
  • Rewrite test_logging_throttle tests: (#167)
  • Disable uncrustify indentation check for macros that use windows __pragma (#164)
  • Fix armhf warning (#163)
  • Contributors: Christian Rauch, Dirk Thomas, Emerson Knapp, Michel Hidalgo, Shane Loretz, jpsamper2009

0.7.3 (2019-05-29)

  • getprogname() is the correct API to use on Android. (#162)
  • Contributors: Chris Lalancette

0.7.1 (2019-05-08)

  • Add function rcutils_string_array_cmp (#144)
  • Rename result variable for clarity. (#157)
  • Add in utilities needed for log location (#155)
  • remove macros from source file (#156)
  • Migrate launch tests to new launch_testing features & API (#140)
  • Use GCC extension for printf-like functions (#154)
  • Fix leak in test_logging.cpp (#153)
  • Fix leak in test_logging_macros.cpp (#152)
  • Fix remaining leaks in test_string_map.cpp (#151)
  • Fix a leak in test_array_list.cpp (#149)
  • Contributors: Chris Lalancette, Dirk Thomas, Jacob Perron, Michel Hidalgo, Steven! Ragnar

Wiki Tutorials

See ROS Wiki Tutorials for more details.

Source Tutorials

Not currently indexed.

Dependant Packages

Name Repo Deps
pluginlib github-ros-pluginlib
turtlebot3_node github-ROBOTIS-GIT-turtlebot3
composition github-ros2-demos
demo_nodes_cpp github-ros2-demos
logging_demo github-ros2-demos
quality_of_service_demo_cpp github-ros2-demos
fmi_adapter github-boschresearch-fmi_adapter
fmi_adapter github-boschresearch-fmi_adapter_ros2
rcl github-ros2-rcl
rcl_action github-ros2-rcl
rcl_lifecycle github-ros2-rcl
rcl_yaml_param_parser github-ros2-rcl
rcl_logging_log4cxx github-ros2-rcl_logging
rcl_logging_noop github-ros2-rcl_logging
rcl_logging_spdlog github-ros2-rcl_logging
rclc github-ros2-rclc
rclc_parameter github-ros2-rclc
rclpy github-ros2-rclpy
rcpputils github-ros2-rcpputils
rmw github-ros2-rmw
rmw_connext_cpp github-ros2-rmw_connext
rmw_connext_shared_cpp github-ros2-rmw_connext
rmw_cyclonedds_cpp github-ros2-rmw_cyclonedds
rmw_fastrtps_cpp github-ros2-rmw_fastrtps
rmw_fastrtps_dynamic_cpp github-ros2-rmw_fastrtps
rmw_fastrtps_shared_cpp github-ros2-rmw_fastrtps
rmw_gurumdds_cpp github-ros2-rmw_gurumdds
rmw_gurumdds_shared_cpp github-ros2-rmw_gurumdds
rmw_implementation github-ros2-rmw_implementation
rmw_opensplice_cpp github-ros2-rmw_opensplice
ros1_bridge github-ros2-ros1_bridge
lgsvl_bridge github-lgsvl-ros2-lgsvl-bridge
controller_parameter_server github-ros-controls-ros2_control
hardware_interface github-ros-controls-ros2_control
test_robot_hardware github-ros-controls-ros2_control
rosbag2 github-ros2-rosbag2
rosbag2_converter_default_plugins github-ros2-rosbag2
rosbag2_storage github-ros2-rosbag2
rosbag2_storage_default_plugins github-ros2-rosbag2
rosbag2_test_common github-ros2-rosbag2
rosbag2_bag_v2_plugins github-ros2-rosbag2_bag_v2
rosidl_typesupport_connext_c github-ros2-rosidl_typesupport_connext
rosidl_typesupport_connext_cpp github-ros2-rosidl_typesupport_connext
rmw_connextdds_common github-ros2-rmw_connextdds
rmw_dds_common github-ros2-rmw_connextdds
test_quality_of_service github-ros2-system_tests

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged rcutils at answers.ros.org

rcutils package from rcutils repo

rcutils

Package Summary

Tags No category tags.
Version 0.7.6
License Apache License 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/ros2/rcutils.git
VCS Type git
VCS Version dashing
Last Updated 2020-11-24
Dev Status MAINTAINED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

Package containing various utility types and functions for C

Additional Links

No additional links.

Maintainers

  • Karsten Knese

Authors

No additional authors.

rcutils: ROS 2 C Utilities data structures

rcutils is a C API consisting of macros, functions, and data structures used through out the ROS 2 code base.

The API is a combination of parts:

  • Allocator concept, used to inject the allocating and deallocating methods into a function or type.
    • rcutils_allocator_t
    • rcutils/allocator.h
  • Command line interface utilities:
    • rcutils/cmdline_parser.h
  • Utilities for setting error states (error message, file, and line number) like strerror for errno:
    • rcutils/error_handling.h
  • Some basic filesystem utilities like checking for path existence, getting the cwd, etc...:
    • rcutils/filesystem.h
  • A C string find method:
    • rcutils_find()
    • rcutils_find_last()
    • rcutils/find.h
  • A convenient string formatting function, which takes a custom allocator:
    • rcutils_format_string()
    • rcutils/format_string.h
  • A function to get an environment variable's value:
    • rcutils_get_env()
    • rcutils/get_env.h
  • Extensible logging macros:
    • Some examples (not exhaustive):
    • RCUTILS_LOG_DEBUG()
    • RCUTILS_LOG_INFO_NAMED()
    • RCUTILS_LOG_WARN_ONCE()
    • RCUTILS_LOG_ERROR_SKIPFIRST_NAMED()
    • rcutils/logging_macros.h
    • rcutils/logging.h
  • A string replacement function which takes an allocator, based on http://creativeandcritical.net/str-replace-c:
    • rcutils_repl_str()
    • rcutils/repl_str.h
  • String splitting functions which take a custom allocator:
    • rcutils_split()
    • rcutils_split_last()
    • rcutils/split.h
  • A version of strdup which takes an allocator:
    • rcutils_strdup()
    • rcutils/strdup.h
  • Portable implementations of "get system time" and "get steady time":
    • rcutils_system_time_now()
    • rcutils_steady_time_now()
    • rcutils/time.h
  • Some useful data structures:
    • A "string array" data structure (analogous to std::vector<std::string>):
    • rcutils_string_array_t
    • rcutils/types/string_array.h
    • A "string-string map" data structure (analogous to std::map<std::string, std::string>)
    • rcutils_string_map_t
    • rcutils/types/string_map.h
  • Macros for controlling symbol visibility and linkage for this library:
    • rcutils/visibility_control.h
CHANGELOG

Changelog for package rcutils

0.7.6 (2020-11-24)

  • Add QNX support for rcutils_get_executable_name. (#282) (#308)
  • Contributors: Ahmed Sobhy, Jacob Perron

0.7.5 (2019-12-10)

  • Fix uninitialized handle error (#187) (#191)
  • Contributors: Karsten Knese, Sean Kelly

0.7.4 (2019-11-11)

  • Use Win32 wrapper around 64 bit atomic operations (#186) (#188)
  • Contributors: Sean Kelly

0.7.3 (2019-05-29)

  • getprogname() is the correct API to use on Android. (#162)
  • Contributors: Chris Lalancette

0.7.1 (2019-05-08)

  • Add function rcutils_string_array_cmp (#144)
  • Rename result variable for clarity. (#157)
  • Add in utilities needed for log location (#155)
  • remove macros from source file (#156)
  • Migrate launch tests to new launch_testing features & API (#140)
  • Use GCC extension for printf-like functions (#154)
  • Fix leak in test_logging.cpp (#153)
  • Fix leak in test_logging_macros.cpp (#152)
  • Fix remaining leaks in test_string_map.cpp (#151)
  • Fix a leak in test_array_list.cpp (#149)
  • Contributors: Chris Lalancette, Dirk Thomas, Jacob Perron, Michel Hidalgo, Steven! Ragnar

Wiki Tutorials

See ROS Wiki Tutorials for more details.

Source Tutorials

Not currently indexed.

Dependant Packages

Name Repo Deps
image_proc github-ros-perception-image_pipeline
pluginlib github-ros-pluginlib
turtlebot3_node github-ROBOTIS-GIT-turtlebot3
composition github-ros2-demos
demo_nodes_cpp github-ros2-demos
logging_demo github-ros2-demos
quality_of_service_demo_cpp github-ros2-demos
fmi_adapter github-boschresearch-fmi_adapter
fmi_adapter github-boschresearch-fmi_adapter_ros2
rcl github-ros2-rcl
rcl_action github-ros2-rcl
rcl_lifecycle github-ros2-rcl
rcl_yaml_param_parser github-ros2-rcl
rcl_logging_log4cxx github-ros2-rcl_logging
rcl_logging_noop github-ros2-rcl_logging
rclc github-ros2-rclc
rclpy github-ros2-rclpy
rmw github-ros2-rmw
rmw_connext_cpp github-ros2-rmw_connext
rmw_connext_shared_cpp github-ros2-rmw_connext
rmw_cyclonedds_cpp github-ros2-rmw_cyclonedds
rmw_fastrtps_cpp github-ros2-rmw_fastrtps
rmw_fastrtps_dynamic_cpp github-ros2-rmw_fastrtps
rmw_fastrtps_shared_cpp github-ros2-rmw_fastrtps
rmw_gurumdds_cpp github-ros2-rmw_gurumdds
rmw_gurumdds_shared_cpp github-ros2-rmw_gurumdds
rmw_implementation github-ros2-rmw_implementation
rmw_opensplice_cpp github-ros2-rmw_opensplice
ros1_bridge github-ros2-ros1_bridge
lgsvl_bridge github-lgsvl-ros2-lgsvl-bridge
controller_parameter_server github-ros-controls-ros2_control
hardware_interface github-ros-controls-ros2_control
test_robot_hardware github-ros-controls-ros2_control
rosbag2 github-ros2-rosbag2
rosbag2_converter_default_plugins github-ros2-rosbag2
rosbag2_storage github-ros2-rosbag2
rosbag2_storage_default_plugins github-ros2-rosbag2
rosbag2_test_common github-ros2-rosbag2
rosbag2_bag_v2_plugins github-ros2-rosbag2_bag_v2
rosidl_typesupport_connext_c github-ros2-rosidl_typesupport_connext
rosidl_typesupport_connext_cpp github-ros2-rosidl_typesupport_connext
rmw_connextdds_common github-ros2-rmw_connextdds
rmw_dds_common github-ros2-rmw_connextdds
test_quality_of_service github-ros2-system_tests
rclada github-ada-ros-rclada

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged rcutils at answers.ros.org

No version for distro lunar. Known supported distros are highlighted in the buttons above.
No version for distro jade. Known supported distros are highlighted in the buttons above.
No version for distro indigo. Known supported distros are highlighted in the buttons above.
No version for distro hydro. Known supported distros are highlighted in the buttons above.
No version for distro kinetic. Known supported distros are highlighted in the buttons above.