Changeset 3326 in ntrip for trunk/BNC/bncrinex.cpp


Ignore:
Timestamp:
Jul 17, 2011, 11:21:22 AM (13 years ago)
Author:
mervart
Message:
 
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/BNC/bncrinex.cpp

    r3325 r3326  
    829829}
    830830
     831string obsToStr(double val) {
     832  if (val != 0.0) {
     833    ostringstream str;
     834    str.setf(ios::showpoint | ios::fixed);
     835    str << setw(14) << setprecision(3) << val;
     836    return str.str();
     837  }
     838  else {
     839    return "0.0";
     840  }
     841}
     842
    831843// One Line in ASCII (Internal) Format
    832844////////////////////////////////////////////////////////////////////////////
     
    839851
    840852  if      (obs.satSys == 'G') { // GPS
    841     str << " 1C "
    842         << setw(14) << setprecision(3) << obs.C1  << ' ' 
    843         << setw(14) << setprecision(3) << obs.L1C << ' '
    844         << setw(14) << setprecision(3) << obs.D1C << ' '
    845         << setw(14) << setprecision(3) << obs.S1C << ' '
     853    str << " 1C " 
     854        << obsToStr(obs.C1)  << ' ' 
     855        << obsToStr(obs.L1C) << ' '
     856        << obsToStr(obs.D1C) << ' '
     857        << obsToStr(obs.S1C) << ' '
    846858        << setw(2)  << obs.slip_cnt_L1;
    847859    str << " 1W "
    848         << setw(14) << setprecision(3) << obs.P1  << ' ' 
    849         << setw(14) << setprecision(3) << obs.L1P << ' '
    850         << setw(14) << setprecision(3) << obs.D1P << ' '
    851         << setw(14) << setprecision(3) << obs.S1P << ' '
     860        << obsToStr(obs.P1)  << ' ' 
     861        << obsToStr(obs.L1P) << ' '
     862        << obsToStr(obs.D1P) << ' '
     863        << obsToStr(obs.S1P) << ' '
    852864        << setw(2)  << obs.slip_cnt_L1;
    853865    str << " 2P "
    854         << setw(14) << setprecision(3) << obs.P2  << ' '
    855         << setw(14) << setprecision(3) << obs.L2P << ' '
    856         << setw(14) << setprecision(3) << obs.D2P << ' '
    857         << setw(14) << setprecision(3) << obs.S2P << ' '
     866        << obsToStr(obs.P2)  << ' '
     867        << obsToStr(obs.L2P) << ' '
     868        << obsToStr(obs.D2P) << ' '
     869        << obsToStr(obs.S2P) << ' '
    858870        << setw(2)  << obs.slip_cnt_L2;
    859871    str << " 2X "
    860         << setw(14) << setprecision(3) << obs.C2  << ' ' 
    861         << setw(14) << setprecision(3) << obs.L2C << ' '
    862         << setw(14) << setprecision(3) << obs.D2C << ' '
    863         << setw(14) << setprecision(3) << obs.S2C << ' '
     872        << obsToStr(obs.C2)  << ' ' 
     873        << obsToStr(obs.L2C) << ' '
     874        << obsToStr(obs.D2C) << ' '
     875        << obsToStr(obs.S2C) << ' '
    864876        << setw(2)  << obs.slip_cnt_L2;
    865     str << " 5  "
    866         << setw(14) << setprecision(3) << obs.C5  << ' '
    867         << setw(14) << setprecision(3) << obs.L5  << ' '
    868         << setw(14) << setprecision(3) << obs.D5  << ' '
    869         << setw(14) << setprecision(3) << obs.S5  << ' '
     877    str << " 5C "
     878        << obsToStr(obs.C5)  << ' '
     879        << obsToStr(obs.L5)  << ' '
     880        << obsToStr(obs.D5)  << ' '
     881        << obsToStr(obs.S5)  << ' '
    870882        << setw(2)  << obs.slip_cnt_L5;
    871883  }
    872884  else if (obs.satSys == 'R') { // Glonass
    873     str << ' ' << setw(3) << obs.slotNum;
     885    str << ' ' << setw(2) << obs.slotNum;
    874886    str << " 1C "
    875         << setw(14) << setprecision(3) << obs.C1  << ' ' 
    876         << setw(14) << setprecision(3) << obs.L1C << ' '
    877         << setw(14) << setprecision(3) << obs.D1C << ' '
    878         << setw(14) << setprecision(3) << obs.S1C << ' '
     887        << obsToStr(obs.C1)  << ' ' 
     888        << obsToStr(obs.L1C) << ' '
     889        << obsToStr(obs.D1C) << ' '
     890        << obsToStr(obs.S1C) << ' '
    879891        << setw(2)  << obs.slip_cnt_L1;
    880892    str << " 1P "
    881         << setw(14) << setprecision(3) << obs.P1  << ' ' 
    882         << setw(14) << setprecision(3) << obs.L1P << ' '
    883         << setw(14) << setprecision(3) << obs.D1P << ' '
    884         << setw(14) << setprecision(3) << obs.S1P << ' '
     893        << obsToStr(obs.P1)  << ' ' 
     894        << obsToStr(obs.L1P) << ' '
     895        << obsToStr(obs.D1P) << ' '
     896        << obsToStr(obs.S1P) << ' '
    885897        << setw(2)  << obs.slip_cnt_L1;
    886898    str << " 2P "
    887         << setw(14) << setprecision(3) << obs.P2  << ' '
    888         << setw(14) << setprecision(3) << obs.L2P << ' '
    889         << setw(14) << setprecision(3) << obs.D2P << ' '
    890         << setw(14) << setprecision(3) << obs.S2P << ' '
     899        << obsToStr(obs.P2)  << ' '
     900        << obsToStr(obs.L2P) << ' '
     901        << obsToStr(obs.D2P) << ' '
     902        << obsToStr(obs.S2P) << ' '
    891903        << setw(2)  << obs.slip_cnt_L2;
    892904    str << " 2C "
    893         << setw(14) << setprecision(3) << obs.C2  << ' ' 
    894         << setw(14) << setprecision(3) << obs.L2C << ' '
    895         << setw(14) << setprecision(3) << obs.D2C << ' '
    896         << setw(14) << setprecision(3) << obs.S2C << ' '
     905        << obsToStr(obs.C2)  << ' ' 
     906        << obsToStr(obs.L2C) << ' '
     907        << obsToStr(obs.D2C) << ' '
     908        << obsToStr(obs.S2C) << ' '
    897909        << setw(2)  << obs.slip_cnt_L2;
    898910  }
    899911  else if (obs.satSys == 'S') { // SBAS
    900912    str << " 1C "
    901         << setw(14) << setprecision(3) << obs.C1  << ' ' 
    902         << setw(14) << setprecision(3) << obs.L1C << ' '
    903         << setw(14) << setprecision(3) << obs.D1C << ' '
    904         << setw(14) << setprecision(3) << obs.S1C << ' '
     913        << obsToStr(obs.C1)  << ' ' 
     914        << obsToStr(obs.L1C) << ' '
     915        << obsToStr(obs.D1C) << ' '
     916        << obsToStr(obs.S1C) << ' '
    905917        << setw(2)  << obs.slip_cnt_L1;
    906918    str << " 1W "
    907         << setw(14) << setprecision(3) << obs.P1  << ' ' 
    908         << setw(14) << setprecision(3) << obs.L1P << ' '
    909         << setw(14) << setprecision(3) << obs.D1P << ' '
    910         << setw(14) << setprecision(3) << obs.S1P << ' '
     919        << obsToStr(obs.P1)  << ' ' 
     920        << obsToStr(obs.L1P) << ' '
     921        << obsToStr(obs.D1P) << ' '
     922        << obsToStr(obs.S1P) << ' '
    911923        << setw(2)  << obs.slip_cnt_L1;
    912924  }
    913925  else if (obs.satSys == 'E') { // Galileo
    914926    str << " 1C "
    915         << setw(14) << setprecision(3) << obs.C1  << ' ' 
    916         << setw(14) << setprecision(3) << obs.L1C << ' '
    917         << setw(14) << setprecision(3) << obs.D1C << ' '
    918         << setw(14) << setprecision(3) << obs.S1C << ' '
     927        << obsToStr(obs.C1)  << ' ' 
     928        << obsToStr(obs.L1C) << ' '
     929        << obsToStr(obs.D1C) << ' '
     930        << obsToStr(obs.S1C) << ' '
    919931        << setw(2)  << obs.slip_cnt_L1;
    920     str << " 5  "
    921         << setw(14) << setprecision(3) << obs.C5  << ' '
    922         << setw(14) << setprecision(3) << obs.L5  << ' '
    923         << setw(14) << setprecision(3) << obs.D5  << ' '
    924         << setw(14) << setprecision(3) << obs.S5  << ' '
     932    str << " 5C "
     933        << obsToStr(obs.C5)  << ' '
     934        << obsToStr(obs.L5)  << ' '
     935        << obsToStr(obs.D5)  << ' '
     936        << obsToStr(obs.S5)  << ' '
    925937        << setw(2)  << obs.slip_cnt_L5;
    926938  }
Note: See TracChangeset for help on using the changeset viewer.