* use new error handling API from rcutils
Signed-off-by: William Woodall <william@osrfoundation.org>
* use semicolons after macros
Signed-off-by: William Woodall <william@osrfoundation.org>
* use new error handling API from rcutils
Signed-off-by: William Woodall <william@osrfoundation.org>
* minimize vertical whitespace
Signed-off-by: William Woodall <william@osrfoundation.org>
* use semicolons after macros
Signed-off-by: William Woodall <william@osrfoundation.org>
* Fix buggy if-conditions in transition functions.
* Bugfix: incease number of states by one
* Cleanup CMakeLists.txt and package.xml
* Move goal state machine implementation details from header to C file
* Create rcl_action package with proposed headers for:
- Action client
- Action server
- Goal handle
- Goal state machine
- Types
* Add rcl_action.h and Doxyfile
* Add functions for adding action clients and action servers to a wait set
* Add default QoS profile for status topic and document default options for action clients/servers
* Include all headers in a .c file for testing compilation
* Add semicolons to all RCLCPP and RCUTILS macros.
Signed-off-by: Chris Lalancette <clalancette@openrobotics.org>
* Add semicolons in Windows stdatomic_helper.h
Signed-off-by: Chris Lalancette <clalancette@openrobotics.org>
* rcl_wait() on timers with ROS clock
Timers handle time jump callbacks
rcl_wait() wakes when ros time gets a time after timer's next call time
* Set timer impl to NULL after fini
* Clock has multiple time jump callbacks
Replaces pre_update and post_update
Adds callbacks when ROS time is activated or deactivated
Add rcl_clock_change_t, rcl_time_jump_t, rcl_jump_threshold_t
Add rcl_clock_add_jump_callback()
Add rcl_clock_remove_jump_callback()
* Fini generic clock after confirming correct clock type
* test_time no ASAN detections
In get_value() function ret_val is allocated from rcutils_strdup when type is DATA_TYPE_STRING,
Should be deallocate in switch val_type=DATA_TYPE_STRING case.
Signed-off-by: Chris Ye <chris.ye@intel.com>
* initialize timer with clock
* use rcl_clock_get_now
* call rcl_clock_fini at the end of each test
* modify rcl_clock_get_now to take a rcl_time_point_value_t
* update docblock
* update to pass time_point_value
* add check for NULL
* add rcl_timer_clock()
* fix style
* doc fixes
* fini clock
* Set default logger level from command line
* Return INVALID_REMAP_RULE
* Add tests
* Do string parsing in rcutils
* Set log level after parsing all arguments
Less convenient but seems cleaner
* Document log arg format, custom return code
* Rename function
* Rename argument
* Refactor argument parsing after rebasing to include param files
* Renaming from param files support
* Doc fixup
* __log -> __log_level
* Use RCUTILS_SAFE_FWRITE_TO_STDERR on bad alloc
* doc fixup
* doc fixup
* Document behaviour if multiple __log_level rules found
* Update docblock formatting
* Label all documentation in arguments.c as internal