robokudo.tree_components.better_parallel ======================================== .. py:module:: robokudo.tree_components.better_parallel Classes ------- .. autoapisummary:: robokudo.tree_components.better_parallel.ParallelPolicy robokudo.tree_components.better_parallel.Parallel Module Contents --------------- .. py:class:: ParallelPolicy Bases: :py:obj:`object` Configurable policies for :py:class:`~py_trees.composites.Parallel` behaviours. .. py:class:: Base(synchronise=False) Bases: :py:obj:`object` Base class for parallel policies. Should never be used directly. .. py:attribute:: synchronise :value: False .. py:class:: SuccessOnAll(synchronise=True) Bases: :py:obj:`Base` Return :py:data:`~py_trees.common.Status.SUCCESS` only when each and every child returns :py:data:`~py_trees.common.Status.SUCCESS`. If synchronisation is requested, any children that tick with :data:`~py_trees.common.Status.SUCCESS` will be skipped on subsequent ticks until the policy criteria is met, or one of the children returns status :data:`~py_trees.common.Status.FAILURE`. .. py:class:: SuccessOnOne Bases: :py:obj:`Base` Return :py:data:`~py_trees.common.Status.SUCCESS` so long as at least one child has :py:data:`~py_trees.common.Status.SUCCESS` and the remainder are :py:data:`~py_trees.common.Status.RUNNING` .. py:class:: SuccessOnSelected(children, synchronise=True) Bases: :py:obj:`Base` Return :py:data:`~py_trees.common.Status.SUCCESS` so long as each child in a specified list returns :py:data:`~py_trees.common.Status.SUCCESS`. If synchronisation is requested, any children that tick with :data:`~py_trees.common.Status.SUCCESS` will be skipped on subsequent ticks until the policy criteria is met, or one of the children returns status :data:`~py_trees.common.Status.FAILURE`. .. py:attribute:: children .. py:class:: Parallel Bases: :py:obj:`py_trees.composites.Parallel` .. py:method:: tick() Tick over the children. Yields: :class:`~py_trees.behaviour.Behaviour`: a reference to itself or one of its children