ddt 1.2.1
Loading...
Searching...
No Matches
ddtDataProducer.hpp
Go to the documentation of this file.
1
20#ifndef DDTDATAPRODUCER_HPP_
21#define DDTDATAPRODUCER_HPP_
22
24
25namespace mal = ::elt::mal;
26namespace datatransfer = ::elt::ddt::datatransfer;
27
28static const std::chrono::milliseconds PUBLISH_TIMEOUT{450};
29
30namespace ddt {
31
37 public:
43
54 DdtDataProducer(const std::string& data_stream_identifier,
55 const int32_t latency, const int32_t deadline,
56 const std::string publishing_uri, DdtLogger* logger);
57
61 ~DdtDataProducer() override;
62
67 void Publish(DataPacket data_packet);
68
74 void Notify(const NotificationType type) override;
75
80 std::string get_publishing_uri() const;
81
82 private:
93 void Initialize(const std::string& data_stream_identifier,
94 const int32_t latency, const int32_t deadline,
95 const std::string pub_uri, DdtLogger* ddt_logger);
96
102 std::string CreatePublishingUri(
103 const std::string& data_stream_identifier) const;
104
105 std::unique_ptr<mal::ps::InstancePublisher<datatransfer::DataPacket>,
106 std::default_delete<
107 mal::ps::InstancePublisher<datatransfer::DataPacket> > >
108 data_publisher;
109 std::shared_ptr<datatransfer::DataPacket> ddt_data_packet;
110
111 double timestamp_prev;
112 std::string publishing_uri;
113};
114
115} // namespace ddt
116
117#endif /* DDTDATAPRODUCER_HPP_ */
118
Definition ddtDataProducer.hpp:36
std::string get_publishing_uri() const
Definition ddtDataProducer.cpp:156
void Notify(const NotificationType type) override
Definition ddtDataProducer.cpp:117
~DdtDataProducer() override
DdtDataProducer(DdtLogger *logger)
Definition ddtDataProducer.cpp:24
void Publish(DataPacket data_packet)
Definition ddtDataProducer.cpp:73
Definition ddtLogger.hpp:51
Definition ddtProducerConsumerBase.hpp:43
NotificationType
Definition ddtProducerConsumerBase.hpp:59
DdtLogger * logger
Definition ddtProducerConsumerBase.hpp:126
Base class for DdtDataProducer and DdtDataConsumer. This class serves as a base class for DdtDataProd...
Definition ddtClient.hpp:39
Definition ddtMemoryAccessor.hpp:226