2016-05-24 06:08:35 -04:00
|
|
|
#ifndef WSJTX_UDP_BEACONS_MODEL_HPP__
|
|
|
|
#define WSJTX_UDP_BEACONS_MODEL_HPP__
|
|
|
|
|
|
|
|
#include <QStandardItemModel>
|
|
|
|
|
2019-07-02 14:00:32 -04:00
|
|
|
#include "MessageServer.hpp"
|
2016-05-24 06:08:35 -04:00
|
|
|
|
|
|
|
using Frequency = MessageServer::Frequency;
|
|
|
|
|
|
|
|
class QString;
|
|
|
|
class QTime;
|
|
|
|
|
|
|
|
//
|
|
|
|
// Beacons Model - simple data model for all beacon spots
|
|
|
|
//
|
|
|
|
// The model is a basic table with uniform row format. Rows consist of
|
|
|
|
// QStandardItem instances containing the string representation of the
|
|
|
|
// column data and if the underlying field is not a string then the
|
|
|
|
// UserRole+1 role contains the underlying data item.
|
|
|
|
//
|
|
|
|
// Two slots are provided to add a new decode and remove all spots for
|
|
|
|
// a client.
|
|
|
|
//
|
|
|
|
class BeaconsModel
|
|
|
|
: public QStandardItemModel
|
|
|
|
{
|
|
|
|
Q_OBJECT;
|
|
|
|
|
|
|
|
public:
|
|
|
|
explicit BeaconsModel (QObject * parent = nullptr);
|
|
|
|
|
|
|
|
Q_SLOT void add_beacon_spot (bool is_new, QString const& client_id, QTime time, qint32 snr, float delta_time
|
|
|
|
, Frequency frequency, qint32 drift, QString const& callsign, QString const& grid
|
2017-09-16 18:20:59 -04:00
|
|
|
, qint32 power, bool off_air);
|
2019-02-02 19:49:35 -05:00
|
|
|
Q_SLOT void decodes_cleared (QString const& client_id);
|
2016-05-24 06:08:35 -04:00
|
|
|
};
|
|
|
|
|
|
|
|
#endif
|