class_docstr: Object which collects rapid-fire signals and condenses them
  into a single signal or a rate-limited stream of signals.
  Used, for example, to prevent a SpinBox from generating multiple
  signals when the mouse wheel is rolled over it.
  
  Emits sigDelayed after input signals have stopped for a certain period of
  time.
docstr: Received signal. Cancel previous timer and store args to be
  forwarded later.
docstr_tok: ["Received","signal",".","Cancel","previous","timer","and","store","args","to","be","forwarded","later","."]
code: def signalReceived(self, *args):
      """Received signal. Cancel previous timer and store args to be
      forwarded later."""
      if self.blockSignal:
          return
      self.args = args
      if self.rateLimit == 0:
          self.timer.stop()
          self.timer.start(int(self.delay * 1000) + 1)
      else:
          now = perf_counter()
          if self.lastFlushTime is None:
              leakTime = 0
          else:
              lastFlush = self.lastFlushTime
              leakTime = max(
                  0, (lastFlush + (1.0 / self.rateLimit)) - now
              )
  
          self.timer.stop()
          self.timer.start(int(min(leakTime, self.delay) * 1000) + 1)
  
file_path: pyqtgraph/pyqtgraph/SignalProxy.py
imports: import weakref
  from time import perf_counter
  from .functions import SignalBlock
  from .Qt import QtCore
  from .ThreadsafeTimer import ThreadsafeTimer
label_desc: Use image node_id 3 for calling the SignalProxy obj's underlying member method code with example usage: obj.signalReceived() without return types