Skip to content
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

Add rcl_node_get_fully_qualified_name #615

Closed
wants to merge 18 commits into from

Conversation

rarvolt
Copy link
Contributor

@rarvolt rarvolt commented Jan 1, 2019

This fixes ros2/rcl#255

@tfoote tfoote added the in review Waiting for review (Kanban column) label Jan 1, 2019
@clalancette clalancette requested a review from tfoote January 3, 2019 18:07
Copy link
Contributor

@tfoote tfoote left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This looks good to me pending resolution of comments in ros2/rcl#369

@tfoote
Copy link
Contributor

tfoote commented Feb 14, 2019

@rarvolt I merged this into a branch and ran the CI on it and it looks like there's one small linter error. Could you resolve the linter error and rebase this to get the latest changes?

Also when you rebase please use the signed off by. We're in the process of rolling out a DCO on ROS2 repositories.

Merged branch CI

  • Linux Build Status
  • Linux-aarch64 Build Status
  • macOS Build Status
  • Windows Build Status

Note to self. trigger parameters here for a rebuild after rebase https://ci.ros2.org/job/ci_launcher/3000/parameters/

@mjcarroll mjcarroll added in progress Actively being worked on (Kanban column) and removed in review Waiting for review (Kanban column) labels Apr 11, 2019
@mjcarroll
Copy link
Member

@rarvolt I'm moving this back to "In Progress" until you have rebased with signed off commits as well as addressed the CI issues. Please move it back to "In Review" when you are ready for it to be reviewed again.

Víctor Mayoral Vilches and others added 17 commits April 15, 2019 11:42
* logging, remove_const before comparison

This change removes the const value from the logger before
comparing with std::is_same.

Signed-off-by: Víctor Mayoral Vilches <[email protected]>

* logging template, replace remove_const by remove_cv

Signed-off-by: Víctor Mayoral Vilches <[email protected]>

* Append typename

Located after compiling rclcpp_action from source

Signed-off-by: Víctor Mayoral Vilches <[email protected]>
* Rename action state transitions

Now using active verbs as described in the design doc:

http://design.ros2.org/articles/actions.html#goal-states

Connects to ros2/rcl#399.

Signed-off-by: Jacob Perron <[email protected]>
…os2#678)

* Created function to generate exception objects

Signed-off-by: Jacob Hassold <[email protected]>

* Created function to generate exception objects

Signed-off-by: Jacob Hassold <[email protected]>

* Fixed typo

Signed-off-by: Jacob Hassold <[email protected]>

* Fixed typo

Signed-off-by: Jacob Hassold <[email protected]>

* Throw exceptions not created by ret

Signed-off-by: Jacob Hassold <[email protected]>

* Throw exceptions not created by ret

Signed-off-by: Jacob Hassold <[email protected]>

* convert throw_from_rcl_error to use from_rcl_error

Mostly just a convenience function
Signed-off-by: Jacob Hassold <[email protected]>

* Updated .gitignore

Please ignore
Signed-off-by: Jacob Hassold <[email protected]>

* Re-ordered functions to allow compilation

Signed-off-by: Jacob Hassold <[email protected]>

* Revert "Updated .gitignore"

This reverts commit bee0ee1.
Signed-off-by: Jacob Hassold <[email protected]>

* restore .gitignore to original state

Signed-off-by: Shane Loretz <[email protected]>

* oops, actually restore .gitignore

Signed-off-by: Shane Loretz <[email protected]>
* overload for node interfaces

Signed-off-by: Karsten Knese <[email protected]>

* remove new line

Signed-off-by: Karsten Knese <[email protected]>

* overload client for node iterfaces

Signed-off-by: Karsten Knese <[email protected]>
* Add method to read timer cancellation

Signed-off-by: Devin Bonnie <[email protected]>

* Add improved documentation
Add improved and more unit tests

Signed-off-by: Devin Bonnie <[email protected]>

* Add missing include
Add override for inherited methods

Signed-off-by: Devin Bonnie <[email protected]>

* Addressed review comments

Signed-off-by: Devin Bonnie <[email protected]>
* Fixed dependencies in the utility.hpp/cpp

Signed-off-by: Dmitrij Dorezyuk <[email protected]>

* Add missing documentation for exceptions in utility.hpp

Signed-off-by: Dmitrij Dorezyuk <[email protected]>

* Add rclcpp namespace to the utility.cpp

Signed-off-by: Dmitrij Dorezyuk <[email protected]>

* Add check for a non-negative nonros_argc value

Signed-off-by: Dmitrij Dorezyuk <[email protected]>

* Simplify syntax for the return_arguments

Signed-off-by: Dmitrij Dorezyuk <[email protected]>

* Incorporate Review

Signed-off-by: Dmitrij Dorezyuk <[email protected]>
Both, the `Executor::execute_any_executable` and the destructor for the `AnyExecutable` object used by the multithreaded executor, reset the `can_be_taken_from_` flag on a MutuallyExclusive group. This cause the variable to get out of sync and threads to process executables out of sequence.

This fix clears the callback group variable of the `AnyExecutable` instance effectively preventing its destructor from modifying the variable at the wrong time.

Issue: ros2#702
Signed-off-by: Guillaume Autran <[email protected]>
* in progress broken test_time_source

Signed-off-by: Shane Loretz <[email protected]>

* style

Signed-off-by: Shane Loretz <[email protected]>

* test undeclared params

Signed-off-by: Shane Loretz <[email protected]>

* Only get parameter if it is set

Signed-off-by: Shane Loretz <[email protected]>

* doc fixup

Signed-off-by: William Woodall <[email protected]>

* use override rather than virtual in places

Signed-off-by: William Woodall <[email protected]>

* rename ParameterInfo_t to ParameterInfo and just use struct, no typedef

Signed-off-by: William Woodall <[email protected]>

* add method to access ParameterValue within a Parameter

Signed-off-by: William Woodall <[email protected]>

* enable get<Parameter> and get<ParameterValue> on Parameter class

Signed-off-by: William Woodall <[email protected]>

* avoid const pass by value

Signed-off-by: William Woodall <[email protected]>

* match type of enum in C++ to type used in message definition

Signed-off-by: William Woodall <[email protected]>

* fixup after rebase

Signed-off-by: William Woodall <[email protected]>

* more fixup after rebase

Signed-off-by: William Woodall <[email protected]>

* replace create_parameter with declare_parameter

Signed-off-by: William Woodall <[email protected]>

* provide implementation for templated declare_parameter method

Signed-off-by: William Woodall <[email protected]>

* style

Signed-off-by: William Woodall <[email protected]>

* do not use const reference when it's a primitive (like bool)

Signed-off-by: William Woodall <[email protected]>

* typo

Signed-off-by: William Woodall <[email protected]>

* follow to bool change that wasn't staged

Signed-off-by: William Woodall <[email protected]>

* fixup tests

Signed-off-by: William Woodall <[email protected]>

* added lots of docs, alternative API signatures, and some of the tests

Signed-off-by: William Woodall <[email protected]>

* more tests and associated fixes

Signed-off-by: William Woodall <[email protected]>

* address documentation feedback

Signed-off-by: William Woodall <[email protected]>

* fixup previously added tests

Signed-off-by: William Woodall <[email protected]>

* add tests and fixes for describe_parameter(s) and get_parameter_types

Signed-off-by: William Woodall <[email protected]>

* remove old parameter tests

Signed-off-by: William Woodall <[email protected]>

* use const reference where possible

Signed-off-by: William Woodall <[email protected]>

* address comments

Signed-off-by: William Woodall <[email protected]>

* fix tests for deprecated methods

Signed-off-by: William Woodall <[email protected]>

* address feedback

Signed-off-by: William Woodall <[email protected]>

* significantly improve the reliability of the time_source tests

Signed-off-by: William Woodall <[email protected]>

* uncrustify, cpplint, and cppcheck fixes

Signed-off-by: William Woodall <[email protected]>

* Revert "significantly improve the reliability of the time_source tests"

This reverts commit 3ef385d.

Signed-off-by: William Woodall <[email protected]>

* only declare use_sim_time parameter if not already declared

Signed-off-by: William Woodall <[email protected]>

* fixup rclcpp_lifecycle

Signed-off-by: William Woodall <[email protected]>

* fixup tests

Signed-off-by: William Woodall <[email protected]>

* add missing namespace scope which fails on Windows

Signed-off-by: William Woodall <[email protected]>

* extend deprecation warning suppression to support Windows too

Signed-off-by: William Woodall <[email protected]>

* fix compiler warnings and missing visibility macro

Signed-off-by: William Woodall <[email protected]>

* remove commented left over tests

Signed-off-by: William Woodall <[email protected]>

* fix compiler warning on Windows

Signed-off-by: William Woodall <[email protected]>

* suppress deprecation warning on include of file in Windows

Signed-off-by: William Woodall <[email protected]>

* avoid potential loss of data warning converting int64_t to int

Signed-off-by: William Woodall <[email protected]>

* trying to fix more loss of data warnings

Signed-off-by: William Woodall <[email protected]>

* fix test_node

Signed-off-by: William Woodall <[email protected]>

* add option to automatically declare parameters from initial parameters (yaml file)

Signed-off-by: William Woodall <[email protected]>

* remove redundant conditional

Signed-off-by: William Woodall <[email protected]>
Now supports callbacks for the goal response and result.
This also makes it easier to incorporate action clients in composable nodes since we don't have to rely on waiting on futures.

Signed-off-by: Jacob Perron <[email protected]>
)

* Changed mapped_ring_buffer class to store both shared_ptr or unique_ptr

Signed-off-by: ivanpauno <[email protected]>

* Changed the IPM store and take methods

Signed-off-by: ivanpauno <[email protected]>

* Changed publish methods to take advantage of the new IPM

Signed-off-by: ivanpauno <[email protected]>

* Change how subscriptions handle intraprocess messages

Signed-off-by: ivanpauno <[email protected]>

* Modified publish method signatures

Signed-off-by: ivanpauno <[email protected]>

* Renamed 'publisher.cpp' and 'subscription.cpp' to 'publisher_base.cpp' and 'subscription_base.cpp'

Signed-off-by: ivanpauno <[email protected]>

* Updated lifecycle_publisher publish methods

Signed-off-by: ivanpauno <[email protected]>
ros2#708)

* Add assignment of missing parameter-related fields in node options copy constructor.

The allow_undeclared_parameters and automatically_declare_initial_parameters fields of
the node options class were not assigned in the assignment operator, resulting in
an incorrect copy of the node options object, which also indirectly affects the
copy constructor.

Signed-off-by: Michael Jeronimo <[email protected]>

* Run linters
* Fix uninitialized bool in clock.cpp

Signed-off-by: Dmitrij Dorezyuk <[email protected]>

* Fixup includes of clock.hpp/cpp

Signed-off-by: Dmitrij Dorezyuk <[email protected]>

* Add documentation for exceptions to clock.hpp

Signed-off-by: Dmitrij Dorezyuk <[email protected]>

* Adjust function signature of getters of clock.hpp/cpp

Signed-off-by: Dmitrij Dorezyuk <[email protected]>

* Remove raw pointers Clock::create_jump_callback

Signed-off-by: Dmitrij Dorezyuk <[email protected]>

* Remove unnecessary rclcpp namespace reference from clock.cpp

Signed-off-by: Dmitrij Dorezyuk <[email protected]>

* Change exception to bad_alloc on JumpHandler allocation failure

Signed-off-by: Dmitrij Dorezyuk <[email protected]>

* Fix missing nullptr check in Clock::on_time_jump

Signed-off-by: Dmitrij Dorezyuk <[email protected]>

* Add JumpHandler::callback types

Signed-off-by: Dmitrij Dorezyuk <[email protected]>

* Add warning for lifetime of Clock and JumpHandler

Signed-off-by: Dmitrij Dorezyuk <[email protected]>

* Incorporate review

Signed-off-by: Dmitrij Dorezyuk <[email protected]>

* Incorporate review

Signed-off-by: Dmitrij Dorezyuk <[email protected]>
@tfoote
Copy link
Contributor

tfoote commented May 1, 2019

I have cherry-picked the changes not covered in #662 into #712 I"m closing this.

@tfoote tfoote closed this May 1, 2019
@tfoote tfoote removed the in progress Actively being worked on (Kanban column) label May 1, 2019
nnmm pushed a commit to ApexAI/rclcpp that referenced this pull request Jul 9, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Get fully qualified node name