+ """Abstract base class for sensors subscribed to multiple signals."""
+ __metaclass__ = ABCMeta
+ def __init__(self, signals, *args, **kwargs):
+ :param signals: signals to subscribe to
+ :type signals: iterable
+ super(MultipleSignalsSensor, self).__init__(*args, **kwargs)
+ self._signals = signals
+ # subscribe :meth:`on_send` handler to the signals in :attr:`_signals`
+ for signal in self._signals:
+ dispatcher.connect(self.on_send, signal=signal,
"""Abstract base class for sensors whose source of data is a body."""