babeltrace2-filter.utils.muxer - Babeltrace 2's message muxer filter component class
A Babeltrace 2 filter.utils.muxer message iterator muxes the messages that it consumes from one or more upstream message iterators into a linear sequence of messages ordered by time.
| flt.utils.muxer |
| | Messages -->@ in0 out @--> Sorted messages Messages -->@ in1 | Messages -->@ in2 |
@ in3 |
See babeltrace2-intro(7) to learn more about the Babeltrace 2 project and its core concepts.
A filter.utils.muxer message iterator does not alter the messages it consumes: it only sorts them.
The message iterator creates one upstream message iterator per connected input port.
To support muxing messages with different default clock classes, the message iterator converts the message times to nanoseconds from the common origin (Unix epoch, for example). This means that the resulting message sequence could be incorrect if one or more clock classes have a frequency which is greater than 1 GHz.
+-----------------+ | flt.utils.muxer | | | @ in0 out @ @ ... | +-----------------+
inN, where N is a decimal integer starting at 0
When the component is initialized, its only input port is in0. When you connect the in0 port, the component creates the in1 input port, and so on.
In other words, a filter.utils.muxer component always has an available input port.
If you encounter any issue or usability problem, please report it on the Babeltrace bug tracker (see <https://bugs.lttng.org/projects/babeltrace>).
The Babeltrace project shares some communication channels with the LTTng project (see <https://lttng.org/>).
The Babeltrace 2 project is the result of hard work by many regular developers and occasional contributors.
The current project maintainer is Jérémie Galarneau <mailto:email@example.com>.
This component class is part of the Babeltrace 2 project.
Babeltrace is distributed under the MIT license (see <https://opensource.org/licenses/MIT>).