message_filters.input_aligner module
Input aligner for synchronizing messages from multiple sources based on their timestamps.
- class message_filters.input_aligner.InputAligner(timeout: rclpy.duration.Duration, filters: Sequence[SimpleFilter] | None = None)
Bases:
objectAlign N inputs by timestamp and forward each to its own output signal.
Unlike a single-output filter,
InputAlignerexposes one signal per input, so it does not extendSimpleFilter. Register downstream callbacks viaregisterCallback()with an explicitindex.- add(msg: Any, queue_index: int) None
- connectInput(filters: Sequence[SimpleFilter]) None
Connect
filtersas inputs, replacing any existing inputs.Note: previously-registered downstream callbacks are also dropped, since the per-input signals are recreated.
- disconnectAll() None
- dispatchMessages() None
- getName() str
- getQueueStatus(index: int) QueueStatus
- registerCallback(index: int, callback: Callable[[Concatenate[rclpy.node.MsgType, P]], None], *args: Any) int
- setInputPeriod(index: int, period: rclpy.duration.Duration) None
- setName(name: str) None
- setupDispatchTimer(node: rclpy.node.Node, update_rate: rclpy.duration.Duration) None
- class message_filters.input_aligner.QueueStatus(active: bool, queue_size: int, msgs_processed: int, msgs_dropped: int)
Bases:
object