RTC Toolkit 5.0.0
Loading...
Searching...
No Matches
dataSampleView.hpp
Go to the documentation of this file.
1
12#ifndef RTCTK_TELSUB_DATASAMPLEVIEW_HPP
13#define RTCTK_TELSUB_DATASAMPLEVIEW_HPP
14#include <cstdint>
15#include <gsl/span>
16#include <map>
17#include <memory_resource>
18#include <taiclock/taiClock.hpp>
19#include <vector>
20
21namespace rtctk::telSub {
22
30 bool operator==(const DataSampleView& rhs) const noexcept {
31 return time_stamp == rhs.time_stamp && data == rhs.data;
32 }
33 bool operator!=(const DataSampleView& rhs) const noexcept {
34 return !(*this == rhs);
35 }
39 taiclock::TaiClock::time_point time_stamp;
43 gsl::span<const uint8_t> data;
44};
45
53 using Alloc = std::pmr::polymorphic_allocator<std::byte>;
54 explicit DataSamplesView(const Alloc& alloc = Alloc()) : sample_id(0u), samples(alloc) {
55 }
59 std::uint32_t sample_id;
64 std::pmr::map<std::string, DataSampleView> samples;
65
66 bool operator==(const DataSamplesView& rhs) const noexcept {
67 return sample_id == rhs.sample_id && samples == rhs.samples;
68 }
69 bool operator!=(const DataSamplesView& rhs) const noexcept {
70 return !(*this == rhs);
71 }
72};
73
74} // namespace rtctk::telSub
75
76#endif // RTCTK_TELSUB_DATASAMPLE_HPP
elt::mal::future< std::string > InjectReqRepEvent(StateMachineEngine &engine)
Definition malEventInjector.hpp:23
Definition main.cpp:24
Agnostic data sample non-owning reference type.
Definition dataSampleView.hpp:29
taiclock::TaiClock::time_point time_stamp
Time stamp of data sample.
Definition dataSampleView.hpp:39
bool operator!=(const DataSampleView &rhs) const noexcept
Definition dataSampleView.hpp:33
gsl::span< const uint8_t > data
Span containing the data.
Definition dataSampleView.hpp:43
bool operator==(const DataSampleView &rhs) const noexcept
Definition dataSampleView.hpp:30
A set of correlated agnostic non-owning data samples references.
Definition dataSampleView.hpp:52
DataSamplesView(const Alloc &alloc=Alloc())
Definition dataSampleView.hpp:54
std::pmr::map< std::string, DataSampleView > samples
Non-owned view of type-agnostic data samples with topic name as key as topics are specified in config...
Definition dataSampleView.hpp:64
bool operator!=(const DataSamplesView &rhs) const noexcept
Definition dataSampleView.hpp:69
std::pmr::polymorphic_allocator< std::byte > Alloc
Definition dataSampleView.hpp:53
bool operator==(const DataSamplesView &rhs) const noexcept
Definition dataSampleView.hpp:66
std::uint32_t sample_id
Sample id for all samples in DataSamplesView::samples.
Definition dataSampleView.hpp:59