source: ntrip/trunk/BNC/bnccaster.h@ 261

Last change on this file since 261 was 258, checked in by mervart, 18 years ago

* empty log message *

File size: 1.3 KB
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
12class bncGetThread;
13
14class 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.