Xirsys.Sockets.Accumulator.Reorder (xturn_sockets v2.0.0)

View Source

Generic reordering decorator over any inner Accumulator.

Whole packets from the inner accumulator are tagged with an integer key via key_fun.(packet, meta). Keys must be contiguous for in-order release starting at the first key observed. Packets tagged :unordered bypass reordering.

Options

  • :inner - inner accumulator module (default: Accumulator.Raw)
  • :inner_opts - options passed to inner.init/1
  • :key_fun - required (packet, meta) -> integer() | :unordered

  • :name - config lookup key for Config.reorder_opts/2 (e.g. :rtp)
  • :window, :max_delay_ms, :on_overflow, :enabled - tunable via config and/or explicit opts (see Config.reorder_opts/2)
  • :clock - injectable clock, defaults to System.monotonic_time/1