Source code for timeflux_dsp.nodes.time

"""This module contains nodes for time index processing"""

import numpy as np

from timeflux.core.node import Node


[docs]class DelayIndex(Node): def __init__(self, delay=None): super().__init__() self._delay = None self._delay = self.to_timedelta(delay)
[docs] def to_timedelta(self, duration): if duration is None: return None return np.timedelta64(1, "us") * (duration * 1e6)
[docs] def update(self): if not self.i.ready(): return if self._delay is None: self._delay = self.to_timedelta(self.o.meta.get("delay")) if self._delay is not None: self.o = self.i self.o.data.index -= self._delay