JS8Call-Improved master
Loading...
Searching...
No Matches
WSJTXMessageClient.h
1#ifndef WSJTX_MESSAGE_CLIENT_HPP__
2#define WSJTX_MESSAGE_CLIENT_HPP__
3
4#include "JS8_Include/pimpl_h.h"
5#include "JS8_Main/Radio.h"
6
7#include <QDateTime>
8#include <QHostAddress>
9#include <QObject>
10#include <QString>
11#include <QTime>
12
13class QByteArray;
14class QHostAddress;
15class QColor;
16
17class WSJTXMessageClient : public QObject {
18 Q_OBJECT;
19
20 public:
21 using Frequency = Radio::Frequency;
22 using port_type = quint16;
23
39 WSJTXMessageClient(QString const &id, QString const &version,
40 QString const &revision, QString const &server_name,
41 port_type server_port,
42 QStringList const &network_interface_names, int TTL,
43 QObject *parent = nullptr);
44
49 QHostAddress server_address() const;
50
55 port_type server_port() const;
56
67 Q_SLOT void set_server(QString const &server_name,
68 QStringList const &network_interface_names);
69
74 Q_SLOT void set_server_port(port_type server_port = 0u);
75
80 Q_SLOT void set_TTL(int TTL);
81
86 Q_SLOT void enable(bool);
87
116 Q_SLOT void status_update(
117 Frequency, QString const &mode, QString const &dx_call,
118 QString const &report, QString const &tx_mode, bool tx_enabled,
119 bool transmitting, bool decoding, quint32 rx_df, quint32 tx_df,
120 QString const &de_call, QString const &de_grid, QString const &dx_grid,
121 bool watchdog_timeout, QString const &sub_mode, bool fast_mode,
122 quint8 special_op_mode, quint32 frequency_tolerance, quint32 tr_period,
123 QString const &configuration_name, QString const &tx_message);
124
140 Q_SLOT void decode(bool is_new, QTime time, qint32 snr, float delta_time,
141 quint32 delta_frequency, QString const &mode,
142 QString const &message, bool low_confidence,
143 bool off_air);
144
150 Q_SLOT void decodes_cleared();
151
175 Q_SLOT void qso_logged(QDateTime time_off, QString const &dx_call,
176 QString const &dx_grid, Frequency dial_frequency,
177 QString const &mode, QString const &report_sent,
178 QString const &report_received,
179 QString const &tx_power, QString const &comments,
180 QString const &name, QDateTime time_on,
181 QString const &operator_call, QString const &my_call,
182 QString const &my_grid, QString const &exchange_sent,
183 QString const &exchange_rcvd,
184 QString const &propmode);
185
194 Q_SLOT void logged_ADIF(QByteArray const &ADIF_record);
195
200
205 Q_SIGNAL void clear_decodes(quint8 window);
206
218 Q_SIGNAL void reply(QTime, qint32 snr, float delta_time,
219 quint32 delta_frequency, QString const &mode,
220 QString const &message_text, bool low_confidence,
221 quint8 modifiers);
222
226 Q_SIGNAL void close();
227
231 Q_SIGNAL void replay();
232
237 Q_SIGNAL void halt_tx(bool auto_only);
238
244 Q_SIGNAL void free_text(QString const &, bool send);
245
250 Q_SIGNAL void location(QString const &);
251
256 Q_SIGNAL void error(QString const &) const;
257
259
260 private:
261 class impl;
262 pimpl<impl> m_;
263};
264
265#endif
Definition WSJTXMessageClient.cpp:84
Q_SLOT void logged_ADIF(QByteArray const &ADIF_record)
Send a Logged ADIF message.
Definition WSJTXMessageClient.cpp:693
Q_SLOT void set_server_port(port_type server_port=0u)
Set the server port.
Definition WSJTXMessageClient.cpp:490
Q_SLOT void decodes_cleared()
Send a Clear Decodes message.
Definition WSJTXMessageClient.cpp:613
Q_SIGNAL void replay()
Emitted when a Replay message is received.
Q_SIGNAL void location(QString const &)
Emitted when a Location message is received.
Q_SIGNAL void error(QString const &) const
Emitted when an error occurs.
Q_SIGNAL void free_text(QString const &, bool send)
Emitted when a Free Text message is received.
Q_SLOT void status_update(Frequency, QString const &mode, QString const &dx_call, QString const &report, QString const &tx_mode, bool tx_enabled, bool transmitting, bool decoding, quint32 rx_df, quint32 tx_df, QString const &de_call, QString const &de_grid, QString const &dx_grid, bool watchdog_timeout, QString const &sub_mode, bool fast_mode, quint8 special_op_mode, quint32 frequency_tolerance, quint32 tr_period, QString const &configuration_name, QString const &tx_message)
Send a Status message.
Definition WSJTXMessageClient.cpp:533
Q_SLOT void enable(bool)
Enable or disable incoming message processing.
Definition WSJTXMessageClient.cpp:503
port_type server_port() const
Get the server port.
Definition WSJTXMessageClient.cpp:481
QHostAddress server_address() const
Get the server address.
Definition WSJTXMessageClient.cpp:479
Q_SLOT void decode(bool is_new, QTime time, qint32 snr, float delta_time, quint32 delta_frequency, QString const &mode, QString const &message, bool low_confidence, bool off_air)
Send a Decode message.
Definition WSJTXMessageClient.cpp:581
WSJTXMessageClient(QString const &id, QString const &version, QString const &revision, QString const &server_name, port_type server_port, QStringList const &network_interface_names, int TTL, QObject *parent=nullptr)
Construct a WSJT-X message client.
Definition WSJTXMessageClient.cpp:452
Q_SLOT void qso_logged(QDateTime time_off, QString const &dx_call, QString const &dx_grid, Frequency dial_frequency, QString const &mode, QString const &report_sent, QString const &report_received, QString const &tx_power, QString const &comments, QString const &name, QDateTime time_on, QString const &operator_call, QString const &my_call, QString const &my_grid, QString const &exchange_sent, QString const &exchange_rcvd, QString const &propmode)
Send a QSO Logged message.
Definition WSJTXMessageClient.cpp:650
Q_SIGNAL void reply(QTime, qint32 snr, float delta_time, quint32 delta_frequency, QString const &mode, QString const &message_text, bool low_confidence, quint8 modifiers)
Emitted when a Reply message is received.
Q_SIGNAL void close()
Emitted when a Close message is received.
Q_SLOT void set_TTL(int TTL)
Set the TTL for multicast packets.
Definition WSJTXMessageClient.cpp:494
Q_SIGNAL void halt_tx(bool auto_only)
Emitted when a Halt TX message is received.
Q_SIGNAL void clear_decodes(quint8 window)
Emitted when a Clear Decodes message is received.
Q_SLOT void set_server(QString const &server_name, QStringList const &network_interface_names)
Set the server address and network interfaces.
Definition WSJTXMessageClient.cpp:485
Definition pimpl_h.h:16