Line | |
---|
1 |
|
---|
2 | #ifndef BNCCASTER_H
|
---|
3 | #define BNCCASTER_H
|
---|
4 |
|
---|
5 | #include <QFile>
|
---|
6 | #include <QtNetwork>
|
---|
7 | #include <QMultiMap>
|
---|
8 |
|
---|
9 | #include "RTCM/GPSDecoder.h"
|
---|
10 | #include "bncrinex.h"
|
---|
11 |
|
---|
12 | class bncGetThread;
|
---|
13 |
|
---|
14 | class bncCaster : public QObject {
|
---|
15 | Q_OBJECT
|
---|
16 |
|
---|
17 | public:
|
---|
18 | bncCaster(const QString& outFileName, int port);
|
---|
19 | ~bncCaster();
|
---|
20 | void addGetThread(bncGetThread* getThread);
|
---|
21 | int numStations() const {return _staIDs.size();}
|
---|
22 | void newObs(const QByteArray& staID, const QUrl& mountPoint,
|
---|
23 | bool firstObs, Observation* obs);
|
---|
24 |
|
---|
25 | signals:
|
---|
26 | void getThreadErrors();
|
---|
27 | void newMessage(const QByteArray& msg);
|
---|
28 |
|
---|
29 | private slots:
|
---|
30 | void slotNewConnection();
|
---|
31 | void slotGetThreadError(const QByteArray& staID);
|
---|
32 |
|
---|
33 | private:
|
---|
34 | void dumpEpochs(long minTime, long maxTime);
|
---|
35 |
|
---|
36 | QFile* _outFile;
|
---|
37 | int _port;
|
---|
38 | QTextStream* _out;
|
---|
39 | QMultiMap<long, Observation*>* _epochs;
|
---|
40 | long _lastDumpSec;
|
---|
41 | QTcpServer* _server;
|
---|
42 | QList<QTcpSocket*>* _sockets;
|
---|
43 | QList<QByteArray> _staIDs;
|
---|
44 | QMap<QString, bncRinex*> _rinexWriters;
|
---|
45 | QList<bncGetThread*> _threads;
|
---|
46 | int _samplingRate;
|
---|
47 | long _waitTime;
|
---|
48 | QMutex _mutex;
|
---|
49 | };
|
---|
50 |
|
---|
51 | #endif
|
---|
Note:
See
TracBrowser
for help on using the repository browser.