-
Notifications
You must be signed in to change notification settings - Fork 422
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix use_sim_time issue on LifeCycleNode #651
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
fixed whitespace error and checked by ament_cpplint and colcon test |
@Karsten1987 Karsten - what's the timeline for integration? Also wondering about #645 |
Sorry for the late response. I must have missed the notification on it. you can run |
@@ -81,6 +82,15 @@ LifecycleNode::LifecycleNode( | |||
options.start_parameter_event_publisher(), | |||
options.parameter_event_qos_profile() | |||
)), | |||
node_time_source_(new rclcpp::node_interfaces::NodeTimeSource( | |||
node_base_, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
--- src/lifecycle_node.cpp
+++ src/lifecycle_node.cpp.uncrustify
@@ -86,8 +86,8 @@
- node_base_,
- node_topics_,
- node_graph_,
- node_services_,
- node_logging_,
- node_clock_,
- node_parameters_
- )),
+ node_base_,
+ node_topics_,
+ node_graph_,
+ node_services_,
+ node_logging_,
+ node_clock_,
+ node_parameters_
+ )),
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@vinnamkim Can you please update to fix the formatting?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@Karsten1987, @mjeronimo Sorry for repeated miss formatting. I updated commit and checked ament_uncrustify, ament_cppcheck, and colcon test.
Signed-off-by: vinnamkim <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
thanks for iterating over this.
Fix use_sim_time issue on LifeCycleNode (ros2#651)
* Add interfaces for events in memory_strategy Signed-off-by: Miaofei <[email protected]> * refactor waitables Signed-off-by: Miaofei <[email protected]> * Attempt to fix cppcheck (ros2#646) Signed-off-by: Shane Loretz <[email protected]> * add event callbacks to publisher, subscriber, client, service Signed-off-by: Miaofei <[email protected]> * fix some ros2 build issues Signed-off-by: Miaofei <[email protected]> * Add a method to the LifecycleNode class to get the logging interface (ros2#652) There are getters for the other interfaces, but the logging interface appears to have been overlooked. Signed-off-by: Michael Jeronimo <[email protected]> * Add Doxyfile for rclcpp_action Signed-off-by: Jacob Perron <[email protected]> * Add documentation to rclcpp_action Signed-off-by: Jacob Perron <[email protected]> * update to use separated action types (ros2#601) * match renamed action types * fix action type casting * rename type/field to use correct term * rename custom GoalID type to avoid naming collision, update types using unique_identifier_msgs * remove obsolete comments * change signature of set_succeeded / set_canceled * change signature of on_terminal_state_(uuid_, result_msg);set_succeeded / set_canceled * change signature of set_aborted * change signature of publish_feedback * update another test Signed-off-by: Miaofei <[email protected]> * update client-facing API Signed-off-by: Miaofei <[email protected]> * Don't hardcode int64_t for duration type representations (ros2#648) In LLVM's `libcxx`, `int64_t` doesn't match chrono literals. See example below. To compile, run `clang++-6.0 -stdlib=libc++ -std=c++14 TEST.cpp` ``` using namespace std::chrono_literals; template<typename RatioT = std::milli> bool wait_for_service( std::chrono::duration<int64_t, RatioT> timeout ) { return timeout == std::chrono::nanoseconds(0); } int main() { wait_for_service(2s); return 0; } ``` Result of compilation ``` TEST.cpp:6:1: note: candidate template ignored: could not match 'long' against 'long long' wait_for_service( ``` Signed-off-by: Emerson Knapp <[email protected]> Signed-off-by: Steven! Ragnarök <[email protected]> * improve usability of the SubscriptionOptions and PublisherOptions classes Signed-off-by: Miaofei <[email protected]> * Fix test_time_source test (ros2#639) * Fix flakey test Signed-off-by: Pete Baughman <[email protected]> * Fix lint and uncrustify issues Signed-off-by: Pete Baughman <[email protected]> * fix lint errors Signed-off-by: Miaofei <[email protected]> * apply uncrustify Signed-off-by: Miaofei <[email protected]> * add section about DCO to CONTRIBUTING.md * update for rcl API changes Signed-off-by: Miaofei <[email protected]> * Fix lint and build warnings and API inconsistency Signed-off-by: Emerson Knapp <[email protected]> * Avoid race that triggers timer too often (ros2#621) The two distinct operations of acquiring and subsequent checking of a timer have to be protected by one lock_guard against races with other threads. The releasing of a timer has to be protected by the same lock. Given this requirement there is no use for a second mutex. Signed-off-by: Marko Durkovic <[email protected]> * Back out Waitable and GraphEvent-related changes Signed-off-by: Emerson Knapp <[email protected]> * add publisher and subscription events to AllocatorMemoryStrategy * Add stub API for assert_liveliness * Fix use_sim_time issue on LifeCycleNode (ros2#651) Signed-off-by: vinnamkim <[email protected]> * revert changes to client and services address PR comments Signed-off-by: Miaofei <[email protected]> * Add parameter-related templates to LifecycleNode (ros2#645) * Add parameter-related templates to LifecycleNode Signed-off-by: vinnamkim <[email protected]> * Update rclcpp_lifecycle/include/rclcpp_lifecycle/lifecycle_node.hpp Co-Authored-By: vinnamkim <[email protected]> * Update rclcpp_lifecycle/include/rclcpp_lifecycle/lifecycle_node.hpp * update API calls into rcl * fix linter errors in rclcpp_lifecycle (ros2#672) Signed-off-by: Karsten Knese <[email protected]>
* New interfaces for incoming QoS features Adds new PublisherOptions and SubscriptionOptions classes, with new Publisher and Subscriber constructors to accept them. Adds the liveliness assertion callbacks that will be needed for the new Liveliness QoS policy Signed-off-by: Emerson Knapp <[email protected]> * Fix options usage in implementation, and add test to catch that code path. Signed-off-by: Emerson Knapp <[email protected]> * rclcpp QoS implementation (#2) * Add interfaces for events in memory_strategy Signed-off-by: Miaofei <[email protected]> * refactor waitables Signed-off-by: Miaofei <[email protected]> * Attempt to fix cppcheck (ros2#646) Signed-off-by: Shane Loretz <[email protected]> * add event callbacks to publisher, subscriber, client, service Signed-off-by: Miaofei <[email protected]> * fix some ros2 build issues Signed-off-by: Miaofei <[email protected]> * Add a method to the LifecycleNode class to get the logging interface (ros2#652) There are getters for the other interfaces, but the logging interface appears to have been overlooked. Signed-off-by: Michael Jeronimo <[email protected]> * Add Doxyfile for rclcpp_action Signed-off-by: Jacob Perron <[email protected]> * Add documentation to rclcpp_action Signed-off-by: Jacob Perron <[email protected]> * update to use separated action types (ros2#601) * match renamed action types * fix action type casting * rename type/field to use correct term * rename custom GoalID type to avoid naming collision, update types using unique_identifier_msgs * remove obsolete comments * change signature of set_succeeded / set_canceled * change signature of on_terminal_state_(uuid_, result_msg);set_succeeded / set_canceled * change signature of set_aborted * change signature of publish_feedback * update another test Signed-off-by: Miaofei <[email protected]> * update client-facing API Signed-off-by: Miaofei <[email protected]> * Don't hardcode int64_t for duration type representations (ros2#648) In LLVM's `libcxx`, `int64_t` doesn't match chrono literals. See example below. To compile, run `clang++-6.0 -stdlib=libc++ -std=c++14 TEST.cpp` ``` using namespace std::chrono_literals; template<typename RatioT = std::milli> bool wait_for_service( std::chrono::duration<int64_t, RatioT> timeout ) { return timeout == std::chrono::nanoseconds(0); } int main() { wait_for_service(2s); return 0; } ``` Result of compilation ``` TEST.cpp:6:1: note: candidate template ignored: could not match 'long' against 'long long' wait_for_service( ``` Signed-off-by: Emerson Knapp <[email protected]> Signed-off-by: Steven! Ragnarök <[email protected]> * improve usability of the SubscriptionOptions and PublisherOptions classes Signed-off-by: Miaofei <[email protected]> * Fix test_time_source test (ros2#639) * Fix flakey test Signed-off-by: Pete Baughman <[email protected]> * Fix lint and uncrustify issues Signed-off-by: Pete Baughman <[email protected]> * fix lint errors Signed-off-by: Miaofei <[email protected]> * apply uncrustify Signed-off-by: Miaofei <[email protected]> * add section about DCO to CONTRIBUTING.md * update for rcl API changes Signed-off-by: Miaofei <[email protected]> * Fix lint and build warnings and API inconsistency Signed-off-by: Emerson Knapp <[email protected]> * Avoid race that triggers timer too often (ros2#621) The two distinct operations of acquiring and subsequent checking of a timer have to be protected by one lock_guard against races with other threads. The releasing of a timer has to be protected by the same lock. Given this requirement there is no use for a second mutex. Signed-off-by: Marko Durkovic <[email protected]> * Back out Waitable and GraphEvent-related changes Signed-off-by: Emerson Knapp <[email protected]> * add publisher and subscription events to AllocatorMemoryStrategy * Add stub API for assert_liveliness * Fix use_sim_time issue on LifeCycleNode (ros2#651) Signed-off-by: vinnamkim <[email protected]> * revert changes to client and services address PR comments Signed-off-by: Miaofei <[email protected]> * Add parameter-related templates to LifecycleNode (ros2#645) * Add parameter-related templates to LifecycleNode Signed-off-by: vinnamkim <[email protected]> * Update rclcpp_lifecycle/include/rclcpp_lifecycle/lifecycle_node.hpp Co-Authored-By: vinnamkim <[email protected]> * Update rclcpp_lifecycle/include/rclcpp_lifecycle/lifecycle_node.hpp * update API calls into rcl * fix linter errors in rclcpp_lifecycle (ros2#672) Signed-off-by: Karsten Knese <[email protected]> * Update to use the new interface definitions Signed-off-by: Emerson Knapp <[email protected]> * Remove duplicate event_handlers_
Signed-off-by: vinnamkim <[email protected]> Signed-off-by: Jacob Hassold <[email protected]>
Signed-off-by: vinnamkim <[email protected]>
…os2#651) Signed-off-by: Adam Dabrowski <[email protected]>
This commit is related to the issue #641.
In the pull request #608, rclcpp::NodeTimeSource is introduced to rclcpp::Node. But, not included in rclcpp::LifeCycleNode.
Signed-off-by: vinnamkim [email protected]