ddt  1.0.0
ddtEncDecBinaryxD.hpp
Go to the documentation of this file.
1 
19 #ifndef DDT_DATAVISUALISATION_DATATRANSFER_DATATRANSFERLIB_ENCDEC_BINARY_XD_HPP
20 #define DDT_DATAVISUALISATION_DATATRANSFER_DATATRANSFERLIB_ENCDEC_BINARY_XD_HPP
21 
22 #include <boost/interprocess/containers/vector.hpp>
23 
24 #include "MetaData.pb.h"
25 #include "ddt/ddtEncDec.hpp"
26 
27 namespace ip = boost::interprocess;
28 
34  std::string array_dimensions;
36  std::string labels;
37 };
38 
48 class DdtEncDecBinaryxD : public DdtEncDec {
49  public:
53  explicit DdtEncDecBinaryxD();
54 
60  void Decode(const int length, std::vector<uint8_t> meta_data);
61 
68  void Encode(MetaDataElementsBinaryxD const& meta_data);
69 
73  ~DdtEncDecBinaryxD() override;
74 
79  std::vector<uint8_t> get_meta_data() const;
80 
81  // Getter functions for the meta data base members
82 
86  uint32_t get_bytes_per_pixel() const override;
87 
91  uint32_t get_number_dimensions() const override;
92 
96  std::string get_utc_timestamp() const override;
97 
101  bool get_complete_flag() const override;
102 
106  bool get_last_segment() const override;
107 
111  bool get_byte_order_little_endian() const override;
112 
116  uint32_t get_data_type() const override;
117 
121  std::string get_description() const override;
122 
123  // Getter functions for the meta data specific members
124 
129  std::string get_array_dimensions() const;
130 
134  std::string get_configuration_map_name() const;
135 
139  std::string get_labels() const;
140 
141  protected:
146  ddt::MetaDataBinaryxD meta_data_binary_xd;
147 };
148 
149 #endif // DDT_DATAVISUALISATION_DATATRANSFER_DATATRANSFERLIB_ENCDEC_BINARY_XD_HPP
150 
Definition: ddtEncDecBinaryxD.hpp:48
uint32_t get_number_dimensions() const override
Definition: ddtEncDecBinaryxD.cpp:108
std::string get_utc_timestamp() const override
Definition: ddtEncDecBinaryxD.cpp:112
bool get_complete_flag() const override
Definition: ddtEncDecBinaryxD.cpp:116
std::string get_description() const override
Definition: ddtEncDecBinaryxD.cpp:132
std::vector< uint8_t > get_meta_data() const
Definition: ddtEncDecBinaryxD.cpp:91
uint32_t get_bytes_per_pixel() const override
Definition: ddtEncDecBinaryxD.cpp:104
uint32_t get_data_type() const override
Definition: ddtEncDecBinaryxD.cpp:128
std::string get_array_dimensions() const
Definition: ddtEncDecBinaryxD.cpp:136
void Encode(MetaDataElementsBinaryxD const &meta_data)
Definition: ddtEncDecBinaryxD.cpp:40
DdtEncDecBinaryxD()
Definition: ddtEncDecBinaryxD.cpp:21
bool get_byte_order_little_endian() const override
Definition: ddtEncDecBinaryxD.cpp:124
void Decode(const int length, std::vector< uint8_t > meta_data)
Definition: ddtEncDecBinaryxD.cpp:27
std::string get_configuration_map_name() const
Definition: ddtEncDecBinaryxD.cpp:140
std::string get_labels() const
Definition: ddtEncDecBinaryxD.cpp:144
~DdtEncDecBinaryxD() override
ddt::MetaDataBinaryxD meta_data_binary_xd
Definition: ddtEncDecBinaryxD.hpp:146
bool get_last_segment() const override
Definition: ddtEncDecBinaryxD.cpp:120
Definition: ddtEncDec.hpp:63
Base class for encoding / decoding of data samples. This is the base class for encoding / decoding of...
Definition: ddtEncDec.hpp:49
Definition: ddtEncDecBinaryxD.hpp:32
MetaDataBase meta_data_base
Definition: ddtEncDecBinaryxD.hpp:33
std::string labels
Definition: ddtEncDecBinaryxD.hpp:36
std::string configuration_map_name
Definition: ddtEncDecBinaryxD.hpp:35
std::string array_dimensions
Definition: ddtEncDecBinaryxD.hpp:34