We need to distinguish two cases for how the interface of a nested serial container is determined: 1. from its children 2. from its (outer) context As long as the interface is not fully resolved, requiredInterface() returns UNKNOWN. After pruning, the first/last child's interface is remembered and reported instead. |
||
|---|---|---|
| capabilities | ||
| core | ||
| msgs | ||
| rviz_marker_tools | ||
| visualization | ||
| .gitignore | ||
| .rosinstall | ||
| .travis.yml | ||
| LICENSE.txt | ||
| README.md | ||
MoveIt! Task Constructor Framework
The Task Constructor framework provides a flexible and transparent way to define and plan actions that consist of multiple interdependent subtasks. It draws on the planning capabilities of MoveIt! to solve individual subproblems in black-box planning stages. A common interface, based on MoveIt's PlanningScene is used to pass solution hypotheses between stages. The framework enables the hierarchical organization of basic stages using containers, allowing for sequential as well as parallel compositions. For more details, please refer to the associated ICRA 2019 publication.
The framework is still under development. The API is unstable and incomplete.
Feedback and contributions are very welcome.
The current aim is to replace MoveIt's old pick&place pipeline and provide a transparent mechanism to enable and debug complex motion sequences.
The software repository is compatible to MoveIt's Melodic branch, which also works on Kinetic (when compiled from source).