12#ifndef RTCTK_TELSUB_CORRELATORIF_HPP
13#define RTCTK_TELSUB_CORRELATORIF_HPP
19#include <system_error>
Declares AgnosticDataSamples.
Interface for correlator implemementations that takes new data samples from DDS and performs correlat...
Definition correlatorIf.hpp:60
virtual std::optional< std::uint32_t > GetLastSampleId() const RTCTK_NOEXCEPT=0
virtual void CheckDdsConnections()=0
virtual std::optional< CorrelationError > Poll(std::chrono::milliseconds timeout, const DataSamplesView *&view) RTCTK_NOEXCEPT=0
Perform correlation on existing or newly taken data samples.
virtual void Reset() RTCTK_NOEXCEPT=0
Resets internal state.
virtual ~CorrelatorIf()
Definition correlatorIf.hpp:62
Project-wide configuration header.
#define RTCTK_NOEXCEPT
Definition config.hpp:63
Declares the DdsWaitSet implementation.
elt::mal::future< std::string > InjectReqRepEvent(StateMachineEngine &engine)
Definition malEventInjector.hpp:23
std::variant< CorrelationFailedError, DdsWaitSetError > CorrelationError
Definition correlatorIf.hpp:37
Definition correlatorIf.hpp:27
bool operator==(const CorrelationFailedError &b) const
Definition correlatorIf.hpp:31
uint32_t actual_sample_id
Definition correlatorIf.hpp:30
std::string_view topic
Definition correlatorIf.hpp:28
uint32_t expected_sample_id
Definition correlatorIf.hpp:29
Placeholder for correlator parameters.
Definition correlatorIf.hpp:45
uint32_t m_expected_sample_id_increment
if no parameter is given through config, sample id increment is set to 1.
Definition correlatorIf.hpp:49
A set of correlated agnostic non-owning data samples references.
Definition dataSampleView.hpp:52