ddt  1.0.0
ddtPublisher.hpp
Go to the documentation of this file.
1 
21 #ifndef DDTPUBLISHER_HPP_
22 #define DDTPUBLISHER_HPP_
23 
24 #include <Ddtdatatransfericd.hpp>
25 #include <chrono>
26 #include <cstring>
27 #include <iostream>
28 #include <mal/Cii.hpp>
29 #include <mal/ps/qos/Deadline.hpp>
30 #include <mal/ps/qos/Latency.hpp>
31 #include <mal/utility/LoadMal.hpp>
32 #include <map>
33 #include <memory>
34 #include <stdexcept>
35 #include <thread>
36 
37 #include "ddt/ddtLogger.hpp"
38 
39 namespace mal = ::elt::mal;
40 namespace datatransfer = ::elt::ddt::datatransfer;
41 
42 namespace ddt {
43 
49 class DdtPublisher {
50  public:
55 
59  virtual ~DdtPublisher();
60 
71  static std::unique_ptr<mal::ps::InstancePublisher<datatransfer::DataPacket>,
72  std::default_delete<mal::ps::InstancePublisher<
73  datatransfer::DataPacket> > >
74  CreatePublisher(const std::string& data_stream_identifier,
75  const std::string& publishing_uri, const int32_t latency,
76  const int32_t deadline, DdtLogger* logger);
77 
88  static std::unique_ptr<
89  mal::ps::InstancePublisher<datatransfer::NotificationSample>,
90  std::default_delete<
91  mal::ps::InstancePublisher<datatransfer::NotificationSample> > >
92  CreateNotifier(const std::string& data_stream_identifier,
93  const int32_t latency, const int32_t deadline,
94  const int32_t notification_port, DdtLogger* logger);
95 };
96 
97 } // namespace ddt
98 
99 #endif /* DDTPUBLISHER_HPP_ */
100 
Definition: ddtLogger.hpp:51
Definition: ddtPublisher.hpp:49
virtual ~DdtPublisher()
static std::unique_ptr< mal::ps::InstancePublisher< datatransfer::NotificationSample >, std::default_delete< mal::ps::InstancePublisher< datatransfer::NotificationSample > > > CreateNotifier(const std::string &data_stream_identifier, const int32_t latency, const int32_t deadline, const int32_t notification_port, DdtLogger *logger)
Definition: ddtPublisher.cpp:75
static std::unique_ptr< mal::ps::InstancePublisher< datatransfer::DataPacket >, std::default_delete< mal::ps::InstancePublisher< datatransfer::DataPacket > > > CreatePublisher(const std::string &data_stream_identifier, const std::string &publishing_uri, const int32_t latency, const int32_t deadline, DdtLogger *logger)
Definition: ddtPublisher.cpp:34
Class to wrap the usage of log4cplus as logging utility. This file provides a wrapper class for the u...
Definition: ddtClient.hpp:39