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

Action Server to execute trees #60

Merged
merged 12 commits into from
May 5, 2024
Merged

Action Server to execute trees #60

merged 12 commits into from
May 5, 2024

Conversation

facontidavide
Copy link
Collaborator

Thanks to the hard work of @MarqRazz , we have here a first draft of a "standard" action server to execute trees on demand.

Virtual methods add a number of customization points, that are hopefully general enough to cover 99% of the cases.

Copy link
Collaborator

@MarqRazz MarqRazz left a comment

Choose a reason for hiding this comment

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

I have several fixes to get this working and include some basic documentation. Should have them up later today.

Copy link
Collaborator

Choose a reason for hiding this comment

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

What do you think about moving this file to the behaviortree_ros2 package and renaming it to bt_server or something along those lines? For the most part people should be able to use this node to run the library and it seems weird to have launch files calling <node pkg="btcpp_ros2_samples" exec="sample_bt_executor"> when it's a very capable node and not just a sample.

@MarqRazz
Copy link
Collaborator

MarqRazz commented May 3, 2024

I added some basic docs and cleaned up a few things so the examples run, let me know what you think. I was traveling most of today but will try and look into the other changes you made later.

Comment on lines +126 to +131
RCLCPP_INFO(kLogger, "Loaded ROS Plugin: %s", filename.c_str());
}
catch(const std::exception& e)
{
RCLCPP_ERROR(kLogger, "Failed to load ROS Plugin: %s \n %s", filename.c_str(),
e.what());
Copy link
Collaborator

Choose a reason for hiding this comment

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

We can drop ROS from these prints now that it does both types.

Comment on lines +70 to +71
TreeExecutionServer::~TreeExecutionServer()
{}
Copy link
Collaborator

Choose a reason for hiding this comment

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

Do we need to handle joining and cleaning up the action_thread here?

behaviortree_ros2/tree_execution_server.md Show resolved Hide resolved
btcpp_ros2_samples/README.md Outdated Show resolved Hide resolved
@MarqRazz
Copy link
Collaborator

MarqRazz commented May 5, 2024

I have a fix for pre-commit and minor changes to the docs if you are okay with me pushing it.

@facontidavide
Copy link
Collaborator Author

I was going to merge it... right now! Waiting for CI to turn green. Thanks!

@facontidavide
Copy link
Collaborator Author

I will wait for your changes to the docs to be pushed

Copy link
Collaborator

@MarqRazz MarqRazz left a comment

Choose a reason for hiding this comment

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

Thanks for all the help here @facontidavide. My changes were to fix the file permissions (which you fixed) and some minor white space but this looks good as is.

@facontidavide facontidavide merged commit d7890e0 into humble May 5, 2024
2 checks passed
@facontidavide facontidavide deleted the bt_server branch May 5, 2024 14:56
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.

2 participants