* WIP
* Removed async_cancel from action ClintGoalHandle API
* Added status handler to action client goal handler
* Added result handler to action client goal handler
* Identation fix
* Added get/set for action client goal handler
* Changed action client goal handler attrs from rcl to cpp versions
* Added check methods to action client goal handler
* Removed rcl_client pointer from action client goal handler
* Added basic waitable interface to action client
* Updated waitable execute from action client
* Added throw for rcl calls in action client
* Removed duplicated ready flags from action client
* Minor fix
* Added header to action ClientBaseImpl execute
* Mich's update to action client interface
* Added trailing suffix to client pimpl attrs
* Towards a consistent action client
* Misc fixes for the action client
* Yet more misc fixes for the action client
* Few more fixes and shortcuts to deal with missing type support.
* Fixed lint errors in action headers and client
* Fixes to action client internal workflow.
* Misc fixes to get client example to build
* More misck client fixes
* Remove debug print
* replace logging with throw_from_rcl_error
* Wrap result object given by client to user
* Fix a couple bugs trying to cancel goals
* Use unique_indentifier_msgs
* create_client accepts group and removes waitable
* Uncrustify fixes
* [rclcpp_action] Adds tests for action client.
* [WIP] Failing action client tests.
* [rclcpp_action] Action client tests passing.
* Spin both executors to make tests pass on my machine
* Feedback callback uses shared pointer
* comment about why make_result_aware is called
* Client documentation
* Execute one thing at a time
* Return nullptr instead of throwing RejectedGoalError
* ClientGoalHandle worries about feedback awareness
* cpplint + uncrustify
* Use node logging interface
* ACTION -> ActionT
* Make ClientBase constructor protected
* Return types on different line
* Avoid passing const reference to temporary
* Child logger rclcpp_action
* Child logger rclcpp_action
* possible windows fixes
* remove excess space
* swap argument order
* Misc test additions
* Windows independent_bits_engine can't do uint8_t
* Windows link issues
* refactor init to allow for non-global init
Signed-off-by: William Woodall <william@osrfoundation.org>
* Update rclcpp/include/rclcpp/utilities.hpp
Co-Authored-By: wjwwood <william+github@osrfoundation.org>
* Update rclcpp/include/rclcpp/utilities.hpp
Co-Authored-By: wjwwood <william+github@osrfoundation.org>
* Update rclcpp/include/rclcpp/utilities.hpp
Co-Authored-By: wjwwood <william+github@osrfoundation.org>
* Update rclcpp/src/rclcpp/utilities.cpp
Co-Authored-By: wjwwood <william+github@osrfoundation.org>
* refactor state into context objects and fix signal handling
Signed-off-by: William Woodall <william@osrfoundation.org>
* avoid nullptr access in error messages
Signed-off-by: William Woodall <william@osrfoundation.org>
* avoid exception in publish after shutdown was called
Signed-off-by: William Woodall <william@osrfoundation.org>
* fix missing and unused headers
Signed-off-by: William Woodall <william@osrfoundation.org>
* cpplint
Signed-off-by: William Woodall <william@osrfoundation.org>
* fixes found during testing
Signed-off-by: William Woodall <william@osrfoundation.org>
* address bug found in review comment
Signed-off-by: William Woodall <william@osrfoundation.org>
* fixes and warnings fixed during testing
Signed-off-by: William Woodall <william@osrfoundation.org>
* addressing review comments
Signed-off-by: William Woodall <william@osrfoundation.org>
* ensure new ExecutorArgs are used everywhere
* [rclcpp] Add class Waitable
Provides a virtual API for interacting with wait sets.
* [rclcpp] Add node interface for Waitables
* [rclcpp] Implement node interface for Waitables
* [rclcpp] Integrate Waitable entities with executor
* Implement remaining logic for integrating Waitables
* Add visibility macros and other refactoring to Waitable class
* Return zero size for entities in a Waitable by default
* Bugfix: Clear list of waitable handles
* Bugfix: update Waitable handle list based on readiness
* Bugfix: update for loop condition
* Give node a node_waitables_
* Give lifecycle node a node_waitables
Now the functions take an optional output index argument.
Refactored the graph listener usage of rcl_wait_set_add_guard_condition() to take advantage of the new API.
* issue a warning if publishing on a not active publisher
* Adding a logger private member in LifecyclePublisher for avoiding creating a new one echa call
* Providing logging macro signature that accepts std::string
* - RCLCPP_ prefix to macros Add
- New tests added
* - Added doc to the functions and macros
- Functions declared as RCLCPP_PUBLIC
* - Small typo in doc corrected
* Fixed error when compiling with clang
* touch up docs
This fixes the build on MacOS High Sierra and later, and
is the more correct thing to do anyway.
Signed-off-by: Chris Lalancette <clalancette@openrobotics.org>
* Don't auto-activate ROS time if clock topic is being published
* Destroy subscription when not needed, avoid re-creating it
* Additional tests
* Always reset pointer
* Initialise sub in initialiser list
* Implement get_parameter_or_set_default.
This is syntactic sugar to allow the user to get a parameter.
If the parameter is already set on the node, it gets the value
of the parameter. If it is not set, then it gets the alternative
value and sets it on the node, ensuring that it exists.
Signed-off-by: Chris Lalancette <clalancette@openrobotics.org>
* Review fixes (one sentence per line).
Signed-off-by: Chris Lalancette <clalancette@openrobotics.org>
* Rename get_parameter_or_set_default -> get_parameter_or_set
Signed-off-by: Chris Lalancette <clalancette@openrobotics.org>
* Add TIME_MAX and DURATION_MAX functions
* Fix Linting Errors
* change funtion name as per coding style
* change function name as per coding style
* Update duration.cpp
* Update time.cpp
* Update test_duration.cpp
* Update time.hpp
* remove extra empty line
* fix indentation to comply with uncrusity 0.67
* fix spacing before opening brackets
* space between reference and variable name in signature
* questionable space between pointer marker and variable name