- Timestamp:
- Dec 14, 2007, 10:51:30 AM (17 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/BNC/test_bnc_qt.cpp
r464 r599 44 44 #include "RTCM/GPSDecoder.h" 45 45 46 #include <QFile> 47 #include <QTextStream> 46 48 #include <QTcpSocket> 47 49 … … 54 56 int main(int /* argc */, char** /* argv */) { 55 57 56 QTcpSocket socket; 58 QTcpSocket socketObs; 59 QTcpSocket socketEph; 60 61 QFile obsFile("obs.txt"); 62 QFile ephFile("eph.txt"); 57 63 58 socket .connectToHost("127.0.0.1", 1968);59 if (!socket .waitForConnected(10000)) {60 cout << " not connected" << endl;64 socketObs.connectToHost("127.0.0.1", 1968); 65 if (!socketObs.waitForConnected(10000)) { 66 cout << "socketObs: not connected" << endl; 61 67 exit(1); 62 68 } 69 70 socketEph.connectToHost("127.0.0.1", 1969); 71 if (!socketEph.waitForConnected(10000)) { 72 cout << "socketEph: not connected" << endl; 73 exit(1); 74 } 75 76 obsFile.open(QIODevice::WriteOnly | QIODevice::Unbuffered); 77 ephFile.open(QIODevice::WriteOnly | QIODevice::Unbuffered); 78 79 QTextStream outObs(&obsFile); 80 outObs.setRealNumberNotation(QTextStream::FixedNotation); 81 82 QTextStream outEph(&ephFile); 83 outEph.setRealNumberNotation(QTextStream::FixedNotation); 63 84 64 85 // Receive Data … … 69 90 70 91 while (true) { 71 if ( socket.bytesAvailable() ) { 72 int bytesRecv = socket.read(&flag, 1); 92 bool somethingRead = false; 93 94 if (socketObs.state() != QAbstractSocket::ConnectedState) { 95 cout << "socketObs: disconnected" << endl; 96 exit(0); 97 } 98 if (socketEph.state() != QAbstractSocket::ConnectedState) { 99 cout << "socketEph: disconnected" << endl; 100 exit(0); 101 } 102 103 if ( socketObs.bytesAvailable() ) { 104 somethingRead = true; 105 int bytesRecv = socketObs.read(&flag, 1); 73 106 if (flag == begObs) { 74 if ( socket .bytesAvailable() >= sizeof(obs) ) {75 bytesRecv = socket .read((char*) &obs, sizeof(obs));76 cout << setw(5) << obs.StatID<< " "77 << obs.satSys << setw(2) << obs.satNum<< " "78 << setw(4) << obs.GPSWeek<< " "79 << setw(10) << setprecision(2) << obs.GPSWeeks<< " "80 << setw(14) << setprecision(4) << obs.C1<< " "81 << setw(14) << setprecision(4) << obs.C2<< " "82 << setw(14) << setprecision(4) << obs.P1<< " "83 << setw(14) << setprecision(4) << obs.P2<< " "84 << setw(14) << setprecision(4) << obs.L1<< " "85 << setw(14) << setprecision(4) << obs.L2<< " "86 << setw(14) << setprecision(4) << obs.S1<< " "87 << setw(14) << setprecision(4) << obs.S2<< " "88 << setw(4) << obs.SNR1<< " "89 << setw(4) << obs.SNR2<< endl;107 if ( socketObs.bytesAvailable() >= sizeof(obs) ) { 108 bytesRecv = socketObs.read((char*) &obs, sizeof(obs)); 109 outObs << obs.StatID << " " 110 << obs.satSys << obs.satNum << " " 111 << obs.GPSWeek << " " 112 << qSetRealNumberPrecision(2) << obs.GPSWeeks << " " 113 << qSetRealNumberPrecision(4) << obs.C1 << " " 114 << qSetRealNumberPrecision(4) << obs.C2 << " " 115 << qSetRealNumberPrecision(4) << obs.P1 << " " 116 << qSetRealNumberPrecision(4) << obs.P2 << " " 117 << qSetRealNumberPrecision(4) << obs.L1 << " " 118 << qSetRealNumberPrecision(4) << obs.L2 << " " 119 << qSetRealNumberPrecision(4) << obs.S1 << " " 120 << qSetRealNumberPrecision(4) << obs.S2 << " " 121 << obs.SNR1 << " " 122 << obs.SNR2 << endl; 90 123 } 91 124 } 92 125 } 93 else { 94 socket.waitForReadyRead(100); 126 127 if ( socketEph.bytesAvailable() ) { 128 somethingRead = true; 129 QByteArray eph = socketEph.readAll(); 130 outEph << eph.data() << endl; 131 } 132 133 if (!somethingRead) { 134 socketObs.waitForReadyRead(100); 95 135 } 96 136 }
Note:
See TracChangeset
for help on using the changeset viewer.