JS8Call-Improved master
Loading...
Searching...
No Matches
WSJTXMessageClient.h
Go to the documentation of this file.
1
10
11#ifndef WSJTX_MESSAGE_CLIENT_HPP__
12#define WSJTX_MESSAGE_CLIENT_HPP__
13
14#include "JS8_Include/pimpl_h.h"
15#include "JS8_Main/Radio.h"
16
17#include <QDateTime>
18#include <QHostAddress>
19#include <QObject>
20#include <QString>
21#include <QTime>
22
23class QByteArray;
24class QHostAddress;
25class QColor;
26
31class WSJTXMessageClient : public QObject {
32 Q_OBJECT;
33
34 public:
35 using Frequency = Radio::Frequency;
36 using port_type = quint16;
37
53 WSJTXMessageClient(QString const &id, QString const &version,
54 QString const &revision, QString const &server_name,
55 port_type server_port,
56 QStringList const &network_interface_names, int TTL,
57 QObject *parent = nullptr);
58
63 QHostAddress server_address() const;
64
69 port_type server_port() const;
70
81 Q_SLOT void set_server(QString const &server_name,
82 QStringList const &network_interface_names);
83
88 Q_SLOT void set_server_port(port_type server_port = 0u);
89
94 Q_SLOT void set_TTL(int TTL);
95
100 Q_SLOT void enable(bool);
101
130 Q_SLOT void status_update(
131 Frequency, QString const &mode, QString const &dx_call,
132 QString const &report, QString const &tx_mode, bool tx_enabled,
133 bool transmitting, bool decoding, quint32 rx_df, quint32 tx_df,
134 QString const &de_call, QString const &de_grid, QString const &dx_grid,
135 bool watchdog_timeout, QString const &sub_mode, bool fast_mode,
136 quint8 special_op_mode, quint32 frequency_tolerance, quint32 tr_period,
137 QString const &configuration_name, QString const &tx_message);
138
154 Q_SLOT void decode(bool is_new, QTime time, qint32 snr, float delta_time,
155 quint32 delta_frequency, QString const &mode,
156 QString const &message, bool low_confidence,
157 bool off_air);
158
164 Q_SLOT void decodes_cleared();
165
189 Q_SLOT void qso_logged(QDateTime time_off, QString const &dx_call,
190 QString const &dx_grid, Frequency dial_frequency,
191 QString const &mode, QString const &report_sent,
192 QString const &report_received,
193 QString const &tx_power, QString const &comments,
194 QString const &name, QDateTime time_on,
195 QString const &operator_call, QString const &my_call,
196 QString const &my_grid, QString const &exchange_sent,
197 QString const &exchange_rcvd,
198 QString const &propmode);
199
208 Q_SLOT void logged_ADIF(QByteArray const &ADIF_record);
209
214
219 Q_SIGNAL void clear_decodes(quint8 window);
220
232 Q_SIGNAL void reply(QTime, qint32 snr, float delta_time,
233 quint32 delta_frequency, QString const &mode,
234 QString const &message_text, bool low_confidence,
235 quint8 modifiers);
236
240 Q_SIGNAL void close();
241
245 Q_SIGNAL void replay();
246
251 Q_SIGNAL void halt_tx(bool auto_only);
252
258 Q_SIGNAL void free_text(QString const &, bool send);
259
264 Q_SIGNAL void location(QString const &);
265
270 Q_SIGNAL void error(QString const &) const;
271
273
274 private:
275 class impl;
276 pimpl<impl> m_;
277};
278
279#endif
Definition WSJTXMessageClient.cpp:84
Q_SLOT void logged_ADIF(QByteArray const &ADIF_record)
Send a Logged ADIF message.
Definition WSJTXMessageClient.cpp:682
Q_SLOT void set_server_port(port_type server_port=0u)
Set the server port.
Definition WSJTXMessageClient.cpp:479
Q_SLOT void decodes_cleared()
Send a Clear Decodes message.
Definition WSJTXMessageClient.cpp:602
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:522
Q_SLOT void enable(bool)
Enable or disable incoming message processing.
Definition WSJTXMessageClient.cpp:492
port_type server_port() const
Get the server port.
Definition WSJTXMessageClient.cpp:470
QHostAddress server_address() const
Get the server address.
Definition WSJTXMessageClient.cpp:468
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:570
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:447
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:639
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:483
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:474
Opaque implementation manager utilizing perfect forwarding of constructors.
Definition pimpl_h.h:28
An implementation-hiding utility class template leveraging the Pimpl idiom.