mirror of
				https://github.com/saitohirga/WSJT-X.git
				synced 2025-10-31 13:10:19 -04:00 
			
		
		
		
	
		
			
				
	
	
		
			47 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			47 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
| #ifndef WSPRNET_H
 | |
| #define WSPRNET_H
 | |
| 
 | |
| #include <QObject>
 | |
| #include <QString>
 | |
| #include <QList>
 | |
| #include <QHash>
 | |
| #include <QQueue>
 | |
| 
 | |
| class QNetworkAccessManager;
 | |
| class QTimer;
 | |
| class QNetworkReply;
 | |
| 
 | |
| class WSPRNet : public QObject
 | |
| {
 | |
|   Q_OBJECT;
 | |
| 
 | |
| public:
 | |
|   explicit WSPRNet(QNetworkAccessManager *, QObject *parent = nullptr);
 | |
|     void upload(QString const& call, QString const& grid, QString const& rfreq, QString const& tfreq,
 | |
|                 QString const& mode, QString const& tpct, QString const& dbm, QString const& version,
 | |
|                 QString const& fileName);
 | |
|     static bool decodeLine(QString const& line, QHash<QString,QString> &query);
 | |
| 
 | |
| signals:
 | |
|     void uploadStatus(QString);
 | |
| 
 | |
| public slots:
 | |
|     void networkReply(QNetworkReply *);
 | |
|     void work();
 | |
|     void abortOutstandingRequests ();
 | |
| 
 | |
| private:
 | |
|     QNetworkAccessManager *networkManager;
 | |
|     QList<QNetworkReply *> m_outstandingRequests;
 | |
|     QString m_call, m_grid, m_rfreq, m_tfreq, m_mode, m_tpct, m_dbm, m_vers, m_file;
 | |
|     QQueue<QString> urlQueue;
 | |
|     QTimer *uploadTimer;
 | |
|     int m_urlQueueSize;
 | |
|     int m_uploadType;
 | |
| 
 | |
|     QString urlEncodeNoSpot();
 | |
|     QString urlEncodeSpot(QHash<QString,QString> const& spot);
 | |
| };
 | |
| 
 | |
| #endif // WSPRNET_H
 |