Changeset 2711 in ntrip for trunk/BNC/bnccaster.cpp
- Timestamp:
- Nov 18, 2010, 1:38:51 PM (13 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/BNC/bnccaster.cpp
r2710 r2711 55 55 public: 56 56 57 t_oldObsInternal(const t_obs *obs) {58 strcpy(StatID, obs ->StatID);57 t_oldObsInternal(const t_obs& obs) { 58 strcpy(StatID, obs.StatID); 59 59 flags = 0; 60 satSys = obs ->satSys;61 satNum = obs ->satNum;62 slot = obs ->slotNum;63 GPSWeek = obs ->GPSWeek;64 GPSWeeks = obs ->GPSWeeks;65 C1 = obs ->C1;66 C2 = obs ->C2;67 P1 = obs ->P1;68 P2 = obs ->P2;69 L1 = obs ->L1();70 L2 = obs ->L2();71 slip_cnt_L1 = obs ->slip_cnt_L1;72 slip_cnt_L2 = obs ->slip_cnt_L2;60 satSys = obs.satSys; 61 satNum = obs.satNum; 62 slot = obs.slotNum; 63 GPSWeek = obs.GPSWeek; 64 GPSWeeks = obs.GPSWeeks; 65 C1 = obs.C1; 66 C2 = obs.C2; 67 P1 = obs.P1; 68 P2 = obs.P2; 69 L1 = obs.L1(); 70 L2 = obs.L2(); 71 slip_cnt_L1 = obs.slip_cnt_L1; 72 slip_cnt_L2 = obs.slip_cnt_L2; 73 73 lock_timei_L1 = -1; 74 74 lock_timei_L2 = -1; 75 S1 = obs ->S1();76 S2 = obs ->S2();75 S1 = obs.S1(); 76 S2 = obs.S2(); 77 77 SNR1 = 0; 78 78 SNR2 = 0; … … 171 171 } 172 172 173 _epochs = new QMultiMap<long, t_obs *>;173 _epochs = new QMultiMap<long, t_obs>; 174 174 175 175 _lastDumpSec = 0; … … 197 197 delete _nmeaServer; 198 198 delete _nmeaSockets; 199 if (_epochs) { 200 QListIterator<t_obs*> it(_epochs->values()); 201 while (it.hasNext()) { 202 delete it.next(); 203 } 204 delete _epochs; 205 } 199 delete _epochs; 206 200 } 207 201 208 202 // New Observations 209 203 //////////////////////////////////////////////////////////////////////////// 210 void bncCaster::newObs(const QByteArray staID, bool firstObs, t_obs *obs) {204 void bncCaster::newObs(const QByteArray staID, bool firstObs, t_obs obs) { 211 205 212 206 QMutexLocker locker(&_mutex); 213 207 214 obs->_status = t_obs::received; 215 216 long iSec = long(floor(obs->GPSWeeks+0.5)); 217 long newTime = obs->GPSWeek * 7*24*3600 + iSec; 208 long iSec = long(floor(obs.GPSWeeks+0.5)); 209 long newTime = obs.GPSWeek * 7*24*3600 + iSec; 218 210 219 211 // Rename the Station 220 212 // ------------------ 221 strncpy(obs ->StatID, staID.constData(),sizeof(obs->StatID));222 obs ->StatID[sizeof(obs->StatID)-1] = '\0';223 213 strncpy(obs.StatID, staID.constData(),sizeof(obs.StatID)); 214 obs.StatID[sizeof(obs.StatID)-1] = '\0'; 215 224 216 const char begObs[] = "BEGOBS"; 225 217 const int begObsNBytes = sizeof(begObs) - 1; … … 283 275 } 284 276 } 285 delete obs;286 277 return; 287 278 } … … 323 314 void bncCaster::addGetThread(bncGetThread* getThread, bool noNewThread) { 324 315 325 //// qRegisterMetaType<t_obs*>("p_obs");316 qRegisterMetaType<t_obs>("t_obs"); 326 317 qRegisterMetaType<gpsephemeris>("gpsephemeris"); 327 318 qRegisterMetaType<glonassephemeris>("glonassephemeris"); 328 319 329 connect(getThread, SIGNAL(newObs(QByteArray, bool, t_obs *)),330 this, SLOT(newObs(QByteArray, bool, t_obs *))); /// Qt::DirectConnection);320 connect(getThread, SIGNAL(newObs(QByteArray, bool, t_obs)), 321 this, SLOT(newObs(QByteArray, bool, t_obs))); 331 322 332 323 connect(getThread, SIGNAL(getThreadFinished(QByteArray)), … … 385 376 386 377 bool first = true; 387 QList<t_obs *> allObs = _epochs->values(sec);388 389 QListIterator<t_obs *> it(allObs);378 QList<t_obs> allObs = _epochs->values(sec); 379 380 QListIterator<t_obs> it(allObs); 390 381 while (it.hasNext()) { 391 t_obs*obs = it.next();382 const t_obs& obs = it.next(); 392 383 393 384 if (_samplingRate == 0 || sec % _samplingRate == 0) { 394 385 395 386 if (first) { 396 QTime enomtime = QTime(0,0,0).addSecs(static_cast<int>(floor(obs ->GPSWeeks+0.5)));387 QTime enomtime = QTime(0,0,0).addSecs(static_cast<int>(floor(obs.GPSWeeks+0.5))); 397 388 // emit( newMessage( QString("Epoch %1 dumped").arg(enomtime.toString("HH:mm:ss")).toAscii(), true) ); // weber 398 389 } … … 404 395 } 405 396 406 *_out << obs ->StatID << " " << obs->GPSWeek << " ";397 *_out << obs.StatID << " " << obs.GPSWeek << " "; 407 398 _out->setRealNumberPrecision(7); 408 *_out << obs ->GPSWeeks << " ";399 *_out << obs.GPSWeeks << " "; 409 400 410 401 *_out << bncRinex::rinexSatLine(obs, ' ', ' ', ' ').c_str() … … 461 452 } 462 453 463 delete obs;464 454 _epochs->remove(sec); 465 455 first = false;
Note:
See TracChangeset
for help on using the changeset viewer.