Changeset 2677 in ntrip for trunk/BNC/RTCM3
- Timestamp:
- Nov 13, 2010, 11:11:38 AM (14 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/BNC/RTCM3/RTCM3Decoder.cpp
r2676 r2677 165 165 _checkMountPoint == _staID || _checkMountPoint == "ALL") { 166 166 167 for (int ii = 0; ii < bufLen; ii++) { 168 parser.Message[parser.MessageSize++] = buffer[ii]; 167 for (int iByte = 0; iByte < bufLen; iByte++) { 168 169 parser.Message[parser.MessageSize++] = buffer[iByte]; 169 170 170 171 if (parser.MessageSize >= parser.NeedBytes) { … … 232 233 } 233 234 234 for (int ii = 0; ii < parser.Data.numsats; ii++) { 235 for (int iSat = 0; iSat < parser.Data.numsats; iSat++) { 236 235 237 p_obs obs = new t_obs(); 236 int satID = parser.Data.satellites[i i];238 int satID = parser.Data.satellites[iSat]; 237 239 238 240 // GPS … … 298 300 // Loop over all data types 299 301 // ------------------------ 300 for (int jj = 0; jj < parser.numdatatypesGPS; jj++) { 301 int v = 0; 302 // sepearated declaration and initalization of df and pos. Perlt 303 int df; 304 int pos; 305 df = parser.dataflag[jj]; 306 pos = parser.datapos[jj]; 307 if ( (parser.Data.dataflags[ii] & df) 308 && !isnan(parser.Data.measdata[ii][pos]) 309 && !isinf(parser.Data.measdata[ii][pos])) { 310 v = 1; 302 for (int iDTyp = 0; iDTyp < parser.numdatatypesGPS; ++iDTyp) { 303 304 bool obsPresent = false; 305 306 int df = parser.dataflag[iDTyp]; 307 int pos = parser.datapos[iDTyp]; 308 if ( (parser.Data.dataflags[iSat] & df) 309 && !isnan(parser.Data.measdata[iSat][pos]) 310 && !isinf(parser.Data.measdata[iSat][pos])) { 311 obsPresent = true;; 311 312 } 312 313 else { 313 df = parser.dataflagGPS[jj];314 pos = parser.dataposGPS[ jj];315 if ( (parser.Data.dataflags[i i] & df)316 && !isnan(parser.Data.measdata[i i][pos])317 && !isinf(parser.Data.measdata[i i][pos])) {318 v = 1;314 df = parser.dataflagGPS[iDTyp]; 315 pos = parser.dataposGPS[iDTyp]; 316 if ( (parser.Data.dataflags[iSat] & df) 317 && !isnan(parser.Data.measdata[iSat][pos]) 318 && !isinf(parser.Data.measdata[iSat][pos])) { 319 obsPresent = true; 319 320 } 320 321 } 321 if (! v) {322 if (!obsPresent) { 322 323 continue; 323 324 } 324 else 325 { 326 int isat = (parser.Data.satellites[ii] < 120 327 ? parser.Data.satellites[ii] 328 : parser.Data.satellites[ii] - 80); 329 330 // variables df and pos are used consequently. Perlt 331 if (df & GNSSDF_C1DATA) { 332 obs->_o.C1 = parser.Data.measdata[ii][pos]; 333 } 334 else if (df & GNSSDF_C2DATA) { 335 obs->_o.C2 = parser.Data.measdata[ii][pos]; 336 } 337 else if (df & GNSSDF_P1DATA) { 338 obs->_o.P1 = parser.Data.measdata[ii][pos]; 339 } 340 else if (df & GNSSDF_P2DATA) { 341 obs->_o.P2 = parser.Data.measdata[ii][pos]; 342 } 343 else if (df & (GNSSDF_L1CDATA|GNSSDF_L1PDATA)) { 344 obs->_o.L1 = parser.Data.measdata[ii][pos]; 345 obs->_o.SNR1 = parser.Data.snrL1[ii]; 346 obs->_o.lock_timei_L1 = parser.lastlockGPSl1[isat]; 347 } 348 else if (df & (GNSSDF_L2CDATA|GNSSDF_L2PDATA)) { 349 obs->_o.L2 = parser.Data.measdata[ii][pos]; 350 obs->_o.SNR2 = parser.Data.snrL2[ii]; 351 obs->_o.lock_timei_L2 = parser.lastlockGPSl2[isat]; 352 } 353 else if (df & (GNSSDF_S1CDATA|GNSSDF_S1PDATA)) { 354 obs->_o.S1 = parser.Data.measdata[ii][pos]; 355 } 356 else if (df & (GNSSDF_S2CDATA|GNSSDF_S2PDATA)) { 357 obs->_o.S2 = parser.Data.measdata[ii][pos]; 358 } 325 326 if (df & GNSSDF_C1DATA) { 327 obs->_o.C1 = parser.Data.measdata[iSat][pos]; 328 } 329 else if (df & GNSSDF_C2DATA) { 330 obs->_o.C2 = parser.Data.measdata[iSat][pos]; 331 } 332 else if (df & GNSSDF_P1DATA) { 333 obs->_o.P1 = parser.Data.measdata[iSat][pos]; 334 } 335 else if (df & GNSSDF_P2DATA) { 336 obs->_o.P2 = parser.Data.measdata[iSat][pos]; 337 } 338 else if (df & (GNSSDF_L1CDATA|GNSSDF_L1PDATA)) { 339 obs->_o.L1 = parser.Data.measdata[iSat][pos]; 340 obs->_o.SNR1 = parser.Data.snrL1[iSat]; 341 } 342 else if (df & (GNSSDF_L2CDATA|GNSSDF_L2PDATA)) { 343 obs->_o.L2 = parser.Data.measdata[iSat][pos]; 344 obs->_o.SNR2 = parser.Data.snrL2[iSat]; 345 } 346 else if (df & (GNSSDF_S1CDATA|GNSSDF_S1PDATA)) { 347 obs->_o.S1 = parser.Data.measdata[iSat][pos]; 348 } 349 else if (df & (GNSSDF_S2CDATA|GNSSDF_S2PDATA)) { 350 obs->_o.S2 = parser.Data.measdata[iSat][pos]; 359 351 } 360 352 }
Note:
See TracChangeset
for help on using the changeset viewer.