-
Notifications
You must be signed in to change notification settings - Fork 4
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
[ROS2] Add cleanup function to create_action_servers.py
#54
Comments
create_action_servers.py
create_action_servers.py
I'd propose the following:
The downside of the above solution is that it still relies on tree logic. This is nice because it makes sense that we would want to run certain behaviors in the cleanup. But the downside is that we have to tick it to completion and it introduces this other variable of how often to tick the tree. However, the other solution I can think of is having each tree create an arbitrary cleanup function. However, then it would have to re-create the service clients that is necessary to cleanup, which seems overkill to me when the service client is already in the behavior. (Although, actually most likely the cleanup tree that is in the Fallback and the cleanup tree that is called in |
A good test for this is to run |
What we decided:
That handles clean termination when a behavior within the tree fails. To handle preemptions, |
EDIT: Following the discussion here, and wanting to avoid reading/writing the status to blackboard where not necessary, I actually think the right "clean" solution is the following:
|
Closed with #103 |
Some trees make changes (e.g., allowing certain collisions, toggling perception nodes on) that should be undone when the tree ends. The tree can end in a couple of circumstances:
create_action_servers.py
that cleans up any state from the action.This Issue is to implement #3.
The text was updated successfully, but these errors were encountered: