Changeset 622 in ntrip for trunk/BNC/bnccaster.cpp
- Timestamp:
- Dec 16, 2007, 4:27:13 PM (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/BNC/bnccaster.cpp
r605 r622 83 83 } 84 84 85 _epochs = new QMultiMap<long, Observation*>;85 _epochs = new QMultiMap<long, p_obs>; 86 86 87 87 _lastDumpSec = 0; … … 109 109 delete _sockets; 110 110 if (_epochs) { 111 QListIterator< Observation*> it(_epochs->values());111 QListIterator<p_obs> it(_epochs->values()); 112 112 while (it.hasNext()) { 113 113 delete it.next(); … … 119 119 // New Observations 120 120 //////////////////////////////////////////////////////////////////////////// 121 void bncCaster::newObs(const QByteArray staID, bool firstObs, 122 Observation* obs) { 121 void bncCaster::newObs(const QByteArray staID, bool firstObs, p_obs obs) { 123 122 124 123 QMutexLocker locker(&_mutex); 125 124 126 long iSec = long(floor(obs-> GPSWeeks+0.5));127 long newTime = obs-> GPSWeek * 7*24*3600 + iSec;125 long iSec = long(floor(obs->_o.GPSWeeks+0.5)); 126 long newTime = obs->_o.GPSWeek * 7*24*3600 + iSec; 128 127 129 128 // Rename the Station 130 129 // ------------------ 131 strncpy(obs-> StatID, staID.constData(),sizeof(obs->StatID));132 obs-> StatID[sizeof(obs->StatID)-1] = '\0';130 strncpy(obs->_o.StatID, staID.constData(),sizeof(obs->_o.StatID)); 131 obs->_o.StatID[sizeof(obs->_o.StatID)-1] = '\0'; 133 132 134 133 // First time, set the _lastDumpSec immediately … … 174 173 //////////////////////////////////////////////////////////////////////////// 175 174 void bncCaster::addGetThread(bncGetThread* getThread) { 176 connect(getThread, SIGNAL(newObs(const QByteArray, bool, Observation*)),177 this, SLOT(newObs(const QByteArray, bool, Observation*)));175 connect(getThread, SIGNAL(newObs(const QByteArray, bool, p_obs)), 176 this, SLOT(newObs(const QByteArray, bool, p_obs))); 178 177 179 178 connect(getThread, SIGNAL(error(const QByteArray)), … … 208 207 209 208 bool first = true; 210 QList< Observation*> allObs = _epochs->values(sec);211 QListIterator< Observation*> it(allObs);209 QList<p_obs> allObs = _epochs->values(sec); 210 QListIterator<p_obs> it(allObs); 212 211 while (it.hasNext()) { 213 Observation*obs = it.next();212 p_obs obs = it.next(); 214 213 215 214 if (_samplingRate == 0 || sec % _samplingRate == 0) { … … 221 220 _out->setFieldWidth(1); *_out << begEpoch << endl;; 222 221 } 223 _out->setFieldWidth(0); *_out << obs-> StatID;224 _out->setFieldWidth(1); *_out << " " << obs-> satSys;222 _out->setFieldWidth(0); *_out << obs->_o.StatID; 223 _out->setFieldWidth(1); *_out << " " << obs->_o.satSys; 225 224 _out->setPadChar('0'); 226 _out->setFieldWidth(2); *_out << obs-> satNum;225 _out->setFieldWidth(2); *_out << obs->_o.satNum; 227 226 _out->setPadChar(' '); 228 227 _out->setFieldWidth(1); *_out << " "; 229 _out->setFieldWidth(4); *_out << obs-> GPSWeek;230 _out->setFieldWidth(1); *_out << " "; 231 _out->setFieldWidth(14); _out->setRealNumberPrecision(7); *_out << obs-> GPSWeeks;232 _out->setFieldWidth(1); *_out << " "; 233 _out->setFieldWidth(14); _out->setRealNumberPrecision(3); *_out << obs-> C1;234 _out->setFieldWidth(1); *_out << " "; 235 _out->setFieldWidth(14); _out->setRealNumberPrecision(3); *_out << obs-> C2;236 _out->setFieldWidth(1); *_out << " "; 237 _out->setFieldWidth(14); _out->setRealNumberPrecision(3); *_out << obs-> P1;238 _out->setFieldWidth(1); *_out << " "; 239 _out->setFieldWidth(14); _out->setRealNumberPrecision(3); *_out << obs-> P2;240 _out->setFieldWidth(1); *_out << " "; 241 _out->setFieldWidth(14); _out->setRealNumberPrecision(3); *_out << obs-> L1;242 _out->setFieldWidth(1); *_out << " "; 243 _out->setFieldWidth(14); _out->setRealNumberPrecision(3); *_out << obs-> L2;244 _out->setFieldWidth(1); *_out << " "; 245 _out->setFieldWidth(14); _out->setRealNumberPrecision(3); *_out << obs-> S1;246 _out->setFieldWidth(1); *_out << " "; 247 _out->setFieldWidth(14); _out->setRealNumberPrecision(3); *_out << obs-> S2;228 _out->setFieldWidth(4); *_out << obs->_o.GPSWeek; 229 _out->setFieldWidth(1); *_out << " "; 230 _out->setFieldWidth(14); _out->setRealNumberPrecision(7); *_out << obs->_o.GPSWeeks; 231 _out->setFieldWidth(1); *_out << " "; 232 _out->setFieldWidth(14); _out->setRealNumberPrecision(3); *_out << obs->_o.C1; 233 _out->setFieldWidth(1); *_out << " "; 234 _out->setFieldWidth(14); _out->setRealNumberPrecision(3); *_out << obs->_o.C2; 235 _out->setFieldWidth(1); *_out << " "; 236 _out->setFieldWidth(14); _out->setRealNumberPrecision(3); *_out << obs->_o.P1; 237 _out->setFieldWidth(1); *_out << " "; 238 _out->setFieldWidth(14); _out->setRealNumberPrecision(3); *_out << obs->_o.P2; 239 _out->setFieldWidth(1); *_out << " "; 240 _out->setFieldWidth(14); _out->setRealNumberPrecision(3); *_out << obs->_o.L1; 241 _out->setFieldWidth(1); *_out << " "; 242 _out->setFieldWidth(14); _out->setRealNumberPrecision(3); *_out << obs->_o.L2; 243 _out->setFieldWidth(1); *_out << " "; 244 _out->setFieldWidth(14); _out->setRealNumberPrecision(3); *_out << obs->_o.S1; 245 _out->setFieldWidth(1); *_out << " "; 246 _out->setFieldWidth(14); _out->setRealNumberPrecision(3); *_out << obs->_o.S2; 248 247 _out->setFieldWidth(1); 249 *_out << " " << obs-> SNR1 << " " << obs->SNR2 << endl;248 *_out << " " << obs->_o.SNR1 << " " << obs->_o.SNR2 << endl; 250 249 if (!it.hasNext()) { 251 250 _out->setFieldWidth(1); *_out << endEpoch << endl; … … 257 256 // ---------------------- 258 257 if (_sockets) { 259 int numBytes = sizeof( *obs);258 int numBytes = sizeof(obs->_o); 260 259 QListIterator<QTcpSocket*> is(*_sockets); 261 260 while (is.hasNext()) { … … 266 265 } 267 266 sock->write(&begObs, 1); 268 sock->write((char*) obs, numBytes);267 sock->write((char*) &obs->_o, numBytes); 269 268 if (!it.hasNext()) { 270 269 sock->write(&endEpoch, 1);
Note:
See TracChangeset
for help on using the changeset viewer.