step.motion.path.passes.contract ================================ .. py:module:: step.motion.path.passes.contract .. autoapi-nested-parse:: Pass contract primitives — segment representation + extended-contract defaults. This module is intentionally neutral: it imports nothing from ``optimize.py`` or from any sibling pass, so passes can declare ``requires`` / ``produces`` / ``terminal`` against :class:`Representation` without a circular import. A pass may optionally declare ``requires`` / ``produces`` (instances of :class:`Representation`) and ``terminal`` (a bool) as class attributes. Passes that don't declare these behave as ``EITHER`` / ``SAME`` / non-terminal via the ``DEFAULT_*`` constants below. Attributes ---------- .. autoapisummary:: step.motion.path.passes.contract.DEFAULT_REQUIRES step.motion.path.passes.contract.DEFAULT_PRODUCES step.motion.path.passes.contract.DEFAULT_TERMINAL Classes ------- .. autoapisummary:: step.motion.path.passes.contract.Representation Module Contents --------------- .. py:class:: Representation(*args, **kwds) Bases: :py:obj:`enum.Enum` Segment representation a pass consumes or produces. - ``RELATIVE`` — body-frame deltas (the default stream representation). - ``ABSOLUTE`` — world-frame waypoints. - ``EITHER`` — a pass that accepts whatever representation is current. - ``SAME`` — a pass that leaves the representation unchanged. .. py:attribute:: RELATIVE :value: 'relative' .. py:attribute:: ABSOLUTE :value: 'absolute' .. py:attribute:: EITHER :value: 'either' .. py:attribute:: SAME :value: 'same' .. py:data:: DEFAULT_REQUIRES .. py:data:: DEFAULT_PRODUCES .. py:data:: DEFAULT_TERMINAL :value: False