ddt  0.1
ddtPublisherSimulator.hpp
Go to the documentation of this file.
1 // @copyright
2 // (c) Copyright ESO 2020
3 // All Rights Reserved
4 // ESO (eso.org) is an Intergovernmental Organization, and therefore special
5 // legal conditions apply.
6 //
7 // @file ddtPublisherSimulator.hpp
8 // @brief Simulator for sending data.
9 //
10 // This is a simulator for publishing data. Data is read from a directory
11 // containing FITS files.
12 //
13 // @author Carsten Mannel, CGI
14 // @since 2020/09/25
15 //
16 
17 #ifndef DDTPUBLISHERSIMULATOR_HPP_
18 #define DDTPUBLISHERSIMULATOR_HPP_
19 
20 #include <boost/bind/bind.hpp>
21 #include <boost/filesystem.hpp>
22 #include <boost/signals2/signal.hpp>
23 #include <random>
24 
26 #include "ddt/ddtDataPublisher.hpp"
29 #include "ddt/ddtEncDecBiDim.hpp"
32 #include "ddt/ddtLogger.hpp"
33 
34 #include <cpl.h>
35 
36 namespace datatransfer = ::elt::ddt::datatransfer;
37 
38 using namespace ddt;
39 using namespace boost::filesystem;
40 
41 namespace ddt {
42 
47  public:
52 
56  virtual ~DdtPublisherSimulator();
57 
62  int Run();
63 
67  bool Init(int argc, char** argv);
68 
73  int RunImageTransfer();
74 
79  int RunOscilloscopeTransfer();
80 
85  int RunMultiDimensionalArrayTransfer();
86 
91  int RunNumericalSampleArrayTransfer();
92 
97  int RunSegmentedImageTransfer();
98 
99  private:
100  DdtLogger* logger;
101  CommandLineParserBuilder* builder;
102 
103  std::string broker_uri;
104  std::string data_stream_identifier;
105  int publishing_interval;
106  int num_samples_in_buffer;
107  std::string image_folder;
108  int mode;
109  bool checksum;
110 
111  const int LATENCY = 10000;
112  const int DEADLINE = 10;
113 };
114 
115 } // namespace ddt
116 
117 #endif /* DDTPUBLISHERSIMULATOR_HPP_ */
ddt::DdtPublisherSimulator
Definition: ddtPublisherSimulator.hpp:46
commandLineParserBuilder.hpp
ddt::DdtLogger
Definition: ddtLogger.hpp:71
ddt
Definition: ddtClient.hpp:36
ddt::CommandLineParserBuilder
Definition: commandLineParserBuilder.hpp:24
ddtDataPublisherApplication.hpp
ddtEncDecBiDim.hpp
ddt::DdtPublisherSimulator::DdtPublisherSimulator
DdtPublisherSimulator()
ddtDataPublisher.hpp
ddt::DdtDataPublisherApplication
Definition: ddtDataPublisherApplication.hpp:25
ddtLogger.hpp
ddtEncDecMultiDim.hpp
ddtDataTransferFactory.hpp
ddtEncDecMultiLayer.hpp