ark::pipeline::MessageSynchronizerStage

Defined in header “ark/pipeline/stages/message_synchronizer_stage.hh”.


This stage allows you to synchronize messages arriving over multiple channels, by using your provided synchronization function (and other configuration).

The result will be published as a set containing all of the synchronized messages in one batch. A custom function may be supplied (via C++) to determine the raw value that is being synchronized on; otherwise, the pipeline time in the envelope is used to synchronize the messages.

Methods

  • MessageSynchronizerStage(std::string name)
    Constructor. Call to synchronize messages based on envelope time.

  • MessageSynchronizerStage(std::string name, ExtractComparisonValueFunction extract_function)
    Constructor. Call to synchronize messages based on the extractor you provide.

  • ~MessageSynchronizerStage()
    Destructor.

  • void initialize(StageInterface & interface)
    Initializes the stage, setting up subscribers/publishers.