ddt  1.0.0
ddtEncDec.hpp
Go to the documentation of this file.
1 
19 #ifndef DDT_DATAVISUALISATION_DATATRANSFER_DATATRANSFERLIB_ENCDEC_HPP
20 #define DDT_DATAVISUALISATION_DATATRANSFER_DATATRANSFERLIB_ENCDEC_HPP
21 
22 #include <sys/time.h>
23 
24 #include <iostream>
25 
37  float cd1_1;
38  float cd1_2;
39  float cd2_1;
40  float cd2_2;
42  std::string type_1;
43  std::string type_2;
44 };
45 
49 struct MetaDataBase {
50  uint32_t bytes_per_pixel;
52  std::string utc_timestamp;
56  uint32_t data_type;
57  std::string description;
58 };
59 
63 class DdtEncDec {
64  public:
68  explicit DdtEncDec();
69 
73  virtual ~DdtEncDec() = 0;
74 
78  virtual void set_meta_data_length(const int mdl);
79 
84  void set_topic_id(const int ti);
85 
89  virtual int get_meta_data_length();
90 
94  virtual int get_topic_id();
95 
99  virtual uint32_t get_bytes_per_pixel() const;
100 
104  virtual uint32_t get_number_dimensions() const;
105 
109  virtual std::string get_utc_timestamp() const;
110 
114  virtual bool get_complete_flag() const;
115 
119  virtual bool get_last_segment() const;
120 
124  virtual bool get_byte_order_little_endian() const;
125 
129  virtual uint32_t get_data_type() const;
130 
134  virtual std::string get_description() const;
135 
139  virtual float get_reference_point_x() const;
140 
144  virtual float get_reference_point_y() const;
145 
149  virtual float get_ra_reference_point() const;
150 
154  virtual float get_dec_reference_point() const;
155 
159  virtual float get_arcsec_pixel_x() const;
160 
164  virtual float get_arcsec_pixel_y() const;
165 
169  virtual float get_rotation_x() const;
170 
174  virtual float get_cd1_1() const;
175 
179  virtual float get_cd1_2() const;
180 
184  virtual float get_cd2_1() const;
185 
189  virtual float get_cd2_2() const;
190 
194  virtual float get_epoch_equinox() const;
195 
199  virtual std::string get_type_1() const;
200 
204  virtual std::string get_type_2() const;
205 
206  protected:
210  std::string get_current_time() const;
211 
215  int topic_id = 0;
216 
221 };
222 
223 #endif // DDT_DATAVISUALISATION_DATATRANSFER_DATATRANSFERLIB_ENCDEC_HPP
224 
Definition: ddtEncDec.hpp:63
virtual std::string get_type_1() const
Definition: ddtEncDec.cpp:94
virtual bool get_last_segment() const
Definition: ddtEncDec.cpp:62
virtual void set_meta_data_length(const int mdl)
Definition: ddtEncDec.cpp:25
virtual bool get_complete_flag() const
Definition: ddtEncDec.cpp:60
int meta_data_length
Definition: ddtEncDec.hpp:220
virtual float get_reference_point_x() const
Definition: ddtEncDec.cpp:70
virtual float get_cd2_2() const
Definition: ddtEncDec.cpp:90
virtual ~DdtEncDec()=0
virtual uint32_t get_data_type() const
Definition: ddtEncDec.cpp:66
virtual uint32_t get_bytes_per_pixel() const
Definition: ddtEncDec.cpp:54
virtual float get_cd1_2() const
Definition: ddtEncDec.cpp:86
virtual uint32_t get_number_dimensions() const
Definition: ddtEncDec.cpp:56
int topic_id
Definition: ddtEncDec.hpp:215
virtual float get_epoch_equinox() const
Definition: ddtEncDec.cpp:92
void set_topic_id(const int ti)
Definition: ddtEncDec.cpp:27
virtual bool get_byte_order_little_endian() const
Definition: ddtEncDec.cpp:64
virtual float get_cd1_1() const
Definition: ddtEncDec.cpp:84
virtual float get_dec_reference_point() const
Definition: ddtEncDec.cpp:76
virtual int get_topic_id()
Definition: ddtEncDec.cpp:31
virtual std::string get_utc_timestamp() const
Definition: ddtEncDec.cpp:58
virtual float get_arcsec_pixel_y() const
Definition: ddtEncDec.cpp:80
virtual float get_rotation_x() const
Definition: ddtEncDec.cpp:82
virtual std::string get_description() const
Definition: ddtEncDec.cpp:68
virtual std::string get_type_2() const
Definition: ddtEncDec.cpp:96
virtual float get_ra_reference_point() const
Definition: ddtEncDec.cpp:74
std::string get_current_time() const
Definition: ddtEncDec.cpp:33
virtual float get_cd2_1() const
Definition: ddtEncDec.cpp:88
virtual float get_reference_point_y() const
Definition: ddtEncDec.cpp:72
virtual int get_meta_data_length()
Definition: ddtEncDec.cpp:29
virtual float get_arcsec_pixel_x() const
Definition: ddtEncDec.cpp:78
Definition: ddtEncDec.hpp:49
bool complete_flag
Definition: ddtEncDec.hpp:53
uint32_t data_type
Definition: ddtEncDec.hpp:56
uint32_t number_dimensions
Definition: ddtEncDec.hpp:51
bool byte_order_little_endian
Definition: ddtEncDec.hpp:55
uint32_t bytes_per_pixel
Definition: ddtEncDec.hpp:50
std::string utc_timestamp
Definition: ddtEncDec.hpp:52
std::string description
Definition: ddtEncDec.hpp:57
bool last_segment
Definition: ddtEncDec.hpp:54
Definition: ddtEncDec.hpp:29
float cd1_2
Definition: ddtEncDec.hpp:38
float arcsec_pixel_y
Definition: ddtEncDec.hpp:35
float cd2_1
Definition: ddtEncDec.hpp:39
float epoch_equinox
Definition: ddtEncDec.hpp:41
float reference_point_y
Definition: ddtEncDec.hpp:31
float dec_reference_point
Definition: ddtEncDec.hpp:33
float arcsec_pixel_x
Definition: ddtEncDec.hpp:34
float cd1_1
Definition: ddtEncDec.hpp:37
float cd2_2
Definition: ddtEncDec.hpp:40
std::string type_1
Definition: ddtEncDec.hpp:42
std::string type_2
Definition: ddtEncDec.hpp:43
float reference_point_x
Definition: ddtEncDec.hpp:30
float rotation_x_axis
Definition: ddtEncDec.hpp:36
float ra_reference_point
Definition: ddtEncDec.hpp:32