moveit_task_constructor/core
Robert Haschke 1a0b9b36ee fix connection creation
Establishing the interface connections, we face a chicken-egg-problem:
To establish a connection, a predecessors/successors pull interface is
assigned to the current's stage push interface.
However, propagating stages (in auto-detection mode) can only create
their pull interfaces if the corresponding, opposite-side push interface
is present already (because that's the mechanism to determine the supported
propagation directions).

Hence, we need to resolve this by performing two sweeps:
- initialization, assuming both propagation directions should be supported,
  thus generating both pull interfaces, i.e. providing the egg
- stripping down the interfaces to the actual context
  This context is provided by two stages pushing from both ends
  into a (potentially long) sequence of propagating stages (tbd).

Contributions of this PR:
- PropagatingEitherWay: explicitly distinguish AUTO from BOTHWAYS interface
  AUTO: auto-derive interface from provided push interfaces
  BOTHWAYS: explicitly require both directions
- SerialContainer: (better, but not yet perfect) validation of connectivity
- ParallelContainer: determine interface from what children offer
2018-02-18 21:23:12 +01:00
..
demo fix connection creation 2018-02-18 21:23:12 +01:00
include/moveit/task_constructor fix connection creation 2018-02-18 21:23:12 +01:00
src fix connection creation 2018-02-18 21:23:12 +01:00
test extended unittest for serial connection validation 2018-02-18 14:03:57 +01:00
CMakeLists.txt Merge branches 'fixes', 'wip-drag-n-drop', 'wip-ikstage' and 'wip-marker-vis' 2018-02-04 21:36:01 +01:00
motion_planning_stages_plugin_description.xml more exported stage plugins: CurrentState 2018-02-04 21:30:25 +01:00
package.xml Merge branches 'fixes', 'wip-drag-n-drop', 'wip-ikstage' and 'wip-marker-vis' 2018-02-04 21:36:01 +01:00