-
Notifications
You must be signed in to change notification settings - Fork 1.7k
Description
Feature request
Feature description
I'm planning to extend the bt_navigator package to be plugin based, after the discussion on Discourse. The navigators would be plugins, loaded into the bt_navigator node at runtime. This would make it easier to write new navigators in the case of custom behavior trees needing parameters different than the NavigateToPose or NavigateThroughPoses actions.
Implementation considerations
As the other plugin-based packages, the implementation would use the pluginlib library. As for the base class, it's a question to be answered. The navigator base class currently used for the navigators is actually a class template (the template type is the type of the action server that the navigator implements), which cannot be used as a base class as is.
A possible solution would be to separate the action server from the behavior tree engine, and only include the latter in the plugins' base class, although I understand the best would be to include both. @SteveMacenski do you have a better idea how to implement this?