source: ntrip/trunk/BNC/src/bncnetquery.h@ 6787

Last change on this file since 6787 was 6787, checked in by stuerze, 7 years ago

add keep-alive request to send gga message in ntrip version 1 mode without interruption

File size: 1015 bytes
Line 
1#ifndef BNCNETQUERY_H
2#define BNCNETQUERY_H
3
4#include <QtNetwork>
5#include "bncconst.h"
6#include "bnccore.h"
7
8class bncNetQuery : public QObject {
9 Q_OBJECT
10
11 public:
12 enum queryStatus {init, running, finished, error};
13
14 bncNetQuery() {
15 connect(this, SIGNAL(newMessage(QByteArray,bool)),
16 BNC_CORE, SLOT(slotMessage(const QByteArray,bool)));
17 }
18 virtual ~bncNetQuery() {}
19
20 virtual void stop() = 0;
21 virtual void waitForRequestResult(const QUrl& url, QByteArray& outData) = 0;
22 virtual void startRequest(const QUrl& url, const QByteArray& gga) = 0;
23 virtual void keepAliveRequest(const QUrl& url, const QByteArray& gga) = 0;
24 virtual void waitForReadyRead(QByteArray& outData) = 0;
25
26 void sendNMEA(const QByteArray& gga) {
27 keepAliveRequest(_url, gga);
28 }
29
30 queryStatus status() const {return _status;}
31
32 signals:
33 void newMessage(QByteArray msg, bool showOnScreen);
34
35 private slots:
36
37 protected:
38 queryStatus _status;
39 int _timeOut;
40 QUrl _url;
41};
42
43#endif
Note: See TracBrowser for help on using the repository browser.