13#include <sockpp/tcp_connector.h>
16#include "spectrum/spectrum_sm125.h"
18enum class interrogator_t
24constexpr std::string convert_legacy_channel(uint8_t channel)
39 case 10:
return "2.3";
40 case 11:
return "3.3";
41 case 12:
return "4.3";
43 case 13:
return "1.4";
44 case 14:
return "2.4";
45 case 15:
return "3.4";
46 case 16:
return "4.4";
49 throw std::exception(
"Invalid channel value.");
57 sockpp::socket_initializer m_sockinit;
58 sockpp::tcp_connector* m_conn;
59 std::mutex m_socket_mutex;
60 std::string m_address;
63 std::string m_serial_number;
65 std::string m_system_image_id;
66 std::string m_num_daq_duts;
67 std::string m_scan_speed;
68 std::string m_min_wvl;
69 std::string m_max_wvl;
73 void recv_min_max_wvl();
74 void recv_scan_speed();
75 void recv_num_daq_duts();
76 void recv_serial_number();
77 void recv_system_image_id();
79 std::string parse_str_reply(std::string reply);
86 void recv_spectrums();
87 std::unique_ptr<uint8_t[]> recv_spectrums_data(
size_t& dataLength);
88 void set_channels(uint8_t count);
90 std::string min_wvl();
91 std::string max_wvl();
92 std::string scan_speed();
93 std::string num_daq_duts();
94 std::string system_image_id();
96 std::string serial_number();
100 std::unique_ptr<uint8_t[]> send_command(std::string cmd);
101 std::unique_ptr<uint8_t[]> send_command(std::string cmd,
size_t& replyLength);
Data structure providing high-level access to the interrogator device.
Definition: interrogator.h:56
Spectrum of SM125 interrogator.
Definition: spectrum_sm125.h:44