RTC Toolkit  2.0.0
correlatorIf.hpp
Go to the documentation of this file.
1 
11 #ifndef RTCTK_TELSUB_CORRELATORIF_HPP
12 #define RTCTK_TELSUB_CORRELATORIF_HPP
13 #include <rtctk/config.hpp>
14 
15 #include <chrono>
16 #include <optional>
17 #include <system_error>
18 
21 
22 namespace rtctk::telSub {
23 
29 struct CorrelatorParams {};
30 
38 class CorrelatorIf {
39 public:
40  virtual ~CorrelatorIf(){};
41 
46  virtual std::optional<unsigned long> GetLastSampleId() const RTCTK_NOEXCEPT = 0;
47 
69  virtual std::error_code
70  Poll(std::chrono::milliseconds timeout, DataSamplesView const*& view) RTCTK_NOEXCEPT = 0;
71 
83  virtual void Reset() RTCTK_NOEXCEPT = 0;
84 };
85 
86 } // namespace rtctk::telSub
87 
88 #endif // #define RTCTK_TELSUB_CORRELATORIF_HPP
rtctk::telSub::CorrelatorIf
Interface for correlator implemementations that takes new data samples from DDS and performs correlat...
Definition: correlatorIf.hpp:38
dataSampleView.hpp
Declares ShmPublisher.
config.hpp
Project-wide configuration header.
rtctk::telSub::CorrelatorParams
Placeholder for correlator parameters.
Definition: correlatorIf.hpp:29
agnosticDataSamples.hpp
Declares AgnosticDataSamples.
rtctk::telSub::DataSamplesView
A set of correlated agnostic non-owning data samples references.
Definition: dataSampleView.hpp:46
rtctk::telSub::CorrelatorIf::Reset
virtual void Reset() RTCTK_NOEXCEPT=0
Resets internal state.
rtctk::telSub
Definition: main.cpp:6
std
Definition: mudpiProcessingError.hpp:119
rtctk::telSub::CorrelatorIf::GetLastSampleId
virtual std::optional< unsigned long > GetLastSampleId() const RTCTK_NOEXCEPT=0
RTCTK_NOEXCEPT
#define RTCTK_NOEXCEPT
Definition: config.hpp:15
rtctk::telSub::CorrelatorIf::Poll
virtual std::error_code Poll(std::chrono::milliseconds timeout, DataSamplesView const *&view) RTCTK_NOEXCEPT=0
Perform correlation on existing or newly taken data samples.
rtctk::telSub::CorrelatorIf::~CorrelatorIf
virtual ~CorrelatorIf()
Definition: correlatorIf.hpp:40