Changeset 1044 in ntrip for trunk/BNC/bncrinex.cpp
- Timestamp:
- Aug 19, 2008, 11:36:54 AM (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/BNC/bncrinex.cpp
r1029 r1044 93 93 _rinexVers = 2; 94 94 } 95 96 _approxPos[0] = _approxPos[1] = _approxPos[2] = 0.0; 95 97 } 96 98 … … 447 449 // ------------------ 448 450 else { 449 double approxPos[3]; approxPos[0] = approxPos[1] = approxPos[2] = 0.0;450 451 double antennaNEU[3]; antennaNEU[0] = antennaNEU[1] = antennaNEU[2] = 0.0; 451 452 … … 477 478 << setw(20) << " " << "ANT # / TYPE" << endl; 478 479 _out.unsetf(ios::left); 479 _out << setw(14) << setprecision(4) << approxPos[0]480 << setw(14) << setprecision(4) << approxPos[1]481 << setw(14) << setprecision(4) << approxPos[2]480 _out << setw(14) << setprecision(4) << _approxPos[0] 481 << setw(14) << setprecision(4) << _approxPos[1] 482 << setw(14) << setprecision(4) << _approxPos[2] 482 483 << " " << "APPROX POSITION XYZ" << endl; 483 484 _out << setw(14) << setprecision(4) << antennaNEU[0] … … 565 566 double sec = double(datTim.time().second()) + fmod(fObs->_o.GPSWeeks,1.0); 566 567 567 // RINEX Version 3568 // --------------- 568 // Epoch header line: RINEX Version 3 569 // ---------------------------------- 569 570 if (_rinexVers == 3) { 570 char sbasflag = 'S';571 571 _out << datTim.toString("> yyyy MM dd hh mm ").toAscii().data() 572 572 << setw(10) << setprecision(7) << sec 573 573 << " " << 0 << setw(3) << dumpList.size() << endl; 574 575 QListIterator<p_obs> it(dumpList); 576 while (it.hasNext()) { 577 p_obs obs = it.next(); 578 // Changed data output, C1P, C2C|X, L2C|X, S2C|X added. Changed Output for SBAS Perlt 579 if (sbasflag != obs->_o.satSys) { 580 _out << obs->_o.satSys 581 << setw(2) << setfill('0') << obs->_o.satNum << setfill(' ') 582 << setw(14) << setprecision(3) << obs->_o.C1 << " " 583 << setw(14) << setprecision(3) << obs->_o.P1 << " " 584 << setw(14) << setprecision(3) << obs->_o.L1 << " " 585 << setw(1) << obs->_o.SNR1 586 << setw(14) << setprecision(3) << obs->_o.S1 << " " 587 << setw(14) << setprecision(3) << obs->_o.C2 << " " 588 << setw(14) << setprecision(3) << obs->_o.P2 << " " ; 589 if ((obs->_o.C2 != 0.0) && (obs->_o.P2 == 0.0)) { 590 _out << setw(14) << setprecision(3) << obs->_o.L2 << " " 591 << setw(1) << obs->_o.SNR2 592 << setw(14) << setprecision(3) << obs->_o.S2 << " " 593 << " 0.000 0.000 "; 594 } 595 else { 596 _out << " 0.000 0.000 " 597 << setw(14) << setprecision(3) << obs->_o.L2 << " " 598 << setw(1) << obs->_o.SNR2 599 << setw(14) << setprecision(3) << obs->_o.S2; 600 } 601 _out << endl; 602 } 603 else { 604 _out << obs->_o.satSys 605 << setw(2) << setfill('0') << obs->_o.satNum << setfill(' ') 606 << setw(14) << setprecision(3) << obs->_o.C1 << " " 607 << setw(14) << setprecision(3) << obs->_o.P1 << " " 608 << setw(14) << setprecision(3) << obs->_o.L1 << " " 609 << setw(1) << obs->_o.SNR1 610 << setw(14) << setprecision(3) << obs->_o.S1 << endl; 611 } 612 delete obs; 613 } 614 } 615 616 // RINEX Version 2 617 // --------------- 574 } 575 // Epoch header line: RINEX Version 2 576 // ---------------------------------- 618 577 else { 619 578 _out << datTim.toString(" yy MM dd hh mm ").toAscii().data() 620 579 << setw(10) << setprecision(7) << sec 621 580 << " " << 0 << setw(3) << dumpList.size(); 622 581 623 582 QListIterator<p_obs> it(dumpList); int iSat = 0; 624 583 while (it.hasNext()) { … … 632 591 } 633 592 _out << endl; 634 635 it.toFront(); 636 while (it.hasNext()) { 637 p_obs obs = it.next(); 638 593 } 594 595 QListIterator<p_obs> it(dumpList); 596 while (it.hasNext()) { 597 p_obs obs = it.next(); 598 599 // Cycle slips detection 600 // --------------------- 601 int prn = 0; 602 switch (obs->_o.satSys) { 603 case 'G': prn = obs->_o.satNum; break; 604 case 'R': prn = obs->_o.satNum + 200; break; 605 default: prn = obs->_o.satNum; 606 } 607 608 char lli1 = ' '; 609 char lli2 = ' '; 610 if ( obs->_o.slip_cnt_L1 >= 0 ) { 611 if ( _slip_cnt_L1.find(prn) != _slip_cnt_L1.end() && 612 _slip_cnt_L1.find(prn).value() != obs->_o.slip_cnt_L1 ) { 613 lli1 = '1'; 614 } 615 } 616 else if ( obs->_o.lock_timei_L1 >= 0 ) { 617 if ( _lock_timei_L1.find(prn) != _lock_timei_L1.end() && 618 _lock_timei_L1.find(prn).value() != obs->_o.lock_timei_L1 ) { 619 lli1 = '1'; 620 } 621 } 622 623 if ( obs->_o.slip_cnt_L2 >= 0 ) { 624 if ( _slip_cnt_L2.find(prn) != _slip_cnt_L2.end() && 625 _slip_cnt_L2.find(prn).value() != obs->_o.slip_cnt_L2 ) { 626 lli2 = '1'; 627 } 628 } 629 else if ( obs->_o.lock_timei_L2 >= 0 ) { 630 if ( _lock_timei_L2.find(prn) != _lock_timei_L2.end() && 631 _lock_timei_L2.find(prn).value() != obs->_o.lock_timei_L2 ) { 632 lli2 = '1'; 633 } 634 } 635 636 _slip_cnt_L1[prn] = obs->_o.slip_cnt_L1; 637 _slip_cnt_L2[prn] = obs->_o.slip_cnt_L2; 638 639 _lock_timei_L1[prn] = obs->_o.lock_timei_L1; 640 _lock_timei_L2[prn] = obs->_o.lock_timei_L2; 641 642 // RINEX Version 3 643 // --------------- 644 if (_rinexVers == 3) { 645 char sbasflag = 'S'; 646 // Changed data output, C1P, C2C|X, L2C|X, S2C|X added. Changed Output for SBAS Perlt 647 if (sbasflag != obs->_o.satSys) { 648 _out << obs->_o.satSys 649 << setw(2) << setfill('0') << obs->_o.satNum << setfill(' ') 650 << setw(14) << setprecision(3) << obs->_o.C1 << " " 651 << setw(14) << setprecision(3) << obs->_o.P1 << " " 652 << setw(14) << setprecision(3) << obs->_o.L1 << lli1 653 << setw(1) << obs->_o.SNR1 654 << setw(14) << setprecision(3) << obs->_o.S1 << " " 655 << setw(14) << setprecision(3) << obs->_o.C2 << " " 656 << setw(14) << setprecision(3) << obs->_o.P2 << " " ; 657 if ((obs->_o.C2 != 0.0) && (obs->_o.P2 == 0.0)) { 658 _out << setw(14) << setprecision(3) << obs->_o.L2 << lli2 659 << setw(1) << obs->_o.SNR2 660 << setw(14) << setprecision(3) << obs->_o.S2 << " " 661 << " 0.000 0.000 "; 662 } 663 else { 664 _out << " 0.000 0.000 " 665 << setw(14) << setprecision(3) << obs->_o.L2 << " " 666 << setw(1) << obs->_o.SNR2 667 << setw(14) << setprecision(3) << obs->_o.S2; 668 } 669 _out << endl; 670 } 671 else { 672 _out << obs->_o.satSys 673 << setw(2) << setfill('0') << obs->_o.satNum << setfill(' ') 674 << setw(14) << setprecision(3) << obs->_o.C1 << " " 675 << setw(14) << setprecision(3) << obs->_o.P1 << " " 676 << setw(14) << setprecision(3) << obs->_o.L1 << lli1 677 << setw(1) << obs->_o.SNR1 678 << setw(14) << setprecision(3) << obs->_o.S1 << endl; 679 } 680 } 681 682 // RINEX Version 2 683 // --------------- 684 else { 639 685 char lli = ' '; 640 686 char snr = ' '; … … 643 689 _out << setw(14) << setprecision(3) << obs->_o.P1 << lli << snr; 644 690 _out << setw(14) << setprecision(3) << obs->_o.P2 << lli << snr; 645 _out << setw(14) << setprecision(3) << obs->_o.L1 << lli 691 _out << setw(14) << setprecision(3) << obs->_o.L1 << lli1 646 692 << setw(1) << obs->_o.SNR1 << endl; 647 _out << setw(14) << setprecision(3) << obs->_o.L2 << lli 693 _out << setw(14) << setprecision(3) << obs->_o.L2 << lli2 648 694 << setw(1) << obs->_o.SNR2; 649 695 _out << setw(14) << setprecision(3) << obs->_o.S1 ; 650 696 _out << setw(16) << setprecision(3) << obs->_o.S2 ; 651 697 _out << endl; 652 653 delete obs; 654 }698 } 699 700 delete obs; 655 701 } 656 702
Note:
See TracChangeset
for help on using the changeset viewer.