source: ntrip/trunk/BNS/bns.h@ 1569

Last change on this file since 1569 was 1258, checked in by weber, 16 years ago

* empty log message *

File size: 1.8 KB
RevLine 
[756]1#ifndef BNS_H
2#define BNS_H
3
[784]4#include <newmat.h>
5
[769]6#include <QtNetwork>
[756]7#include <QThread>
8
[758]9#include "bnseph.h"
[1062]10#include "bnscaster.h"
[863]11extern "C" {
12#include "RTCM/clock_orbit_rtcm.h"
13}
[758]14
[847]15class bnsRinex;
[848]16class bnsSP3;
[847]17
[778]18class t_ephPair {
19 public:
20 t_ephPair() {
21 eph = 0;
22 oldEph = 0;
23 }
24
25 ~t_ephPair() {
26 delete eph;
27 delete oldEph;
28 }
29
[873]30 ColumnVector xx;
[884]31 t_eph* eph;
32 t_eph* oldEph;
[778]33};
34
[757]35class t_bns : public QThread {
36 Q_OBJECT
[756]37 public:
[757]38 t_bns(QObject* parent = 0);
39 virtual ~t_bns();
[756]40 virtual void run();
41
[757]42 signals:
[1058]43 void newClkBytes(int nBytes);
44 void newEphBytes(int nBytes);
[1258]45 void newOutBytes1(int nBytes);
46 void newOutBytes2(int nBytes);
[757]47 void newMessage(const QByteArray msg);
[760]48 void error(const QByteArray msg);
[836]49 void moveSocket(QThread* tt);
[756]50
[758]51 private slots:
[1058]52 void slotNewEph(t_eph* ep, int nBytes);
[769]53 void slotNewConnection();
[758]54 void slotMessage(const QByteArray msg);
[760]55 void slotError(const QByteArray msg);
[836]56 void slotMoveSocket(QThread* tt);
[758]57
[756]58 private:
[763]59 void deleteBnsEph();
[770]60 void openCaster();
[784]61 void readEpoch();
[1102]62 void processSatellite(int oldEph, int iCaster, bool trafo, t_eph* ep,
63 int GPSweek, double GPSweeks, const QString& prn,
[1066]64 const ColumnVector& xx, struct ClockOrbit::SatData* sd,
65 QString& outLine);
[986]66 void crdTrafo(int GPSWeek, ColumnVector& xyz);
[784]67
[778]68 QTcpServer* _clkServer;
69 QTcpSocket* _clkSocket;
[1066]70 QList<t_bnscaster*> _caster;
[816]71 QFile* _logFile;
72 QTextStream* _logStream;
[1072]73 QFile* _echoFile;
74 QTextStream* _echoStream;
[778]75 t_bnseph* _bnseph;
76 QMutex _mutex;
77 QMap<QString, t_ephPair*> _ephList;
[847]78 bnsRinex* _rnx;
[848]79 bnsSP3* _sp3;
[1197]80 QByteArray _clkLine;
[756]81};
82#endif
Note: See TracBrowser for help on using the repository browser.