Changeset 2702 in ntrip


Ignore:
Timestamp:
Nov 16, 2010, 12:50:49 PM (13 years ago)
Author:
mervart
Message:
 
Location:
trunk/BNC
Files:
7 edited

Legend:

Unmodified
Added
Removed
  • trunk/BNC/RTCM/GPSDecoder.h

    r2692 r2702  
    3535#include "bncconst.h"
    3636
    37 class t_obsInternal {
    38  public:
    39 
    40   t_obsInternal() {
    41     satSys      = 'G';
    42     satNum      = 0;
    43     slotNum     = 0;
    44     GPSWeek     = 0;
    45     GPSWeeks    = 0.0;
    46 
    47     C1          = 0.0;
    48     P1          = 0.0;
    49     L1          = 0.0;
    50     S1          = 0.0;
    51 
    52     C2          = 0.0;
    53     P2          = 0.0;
    54     L2          = 0.0;
    55     S2          = 0.0;
    56  
    57     C5          = 0.0;
    58     L5          = 0.0;
    59     S5          = 0.0;
    60 
    61     slip_cnt_L1 = -1;
    62     slip_cnt_L2 = -1;
    63     slip_cnt_L5 = -1;
    64     StatID[0]   = '\x0';
    65   }
    66 
    67   ~t_obsInternal() {}
    68 
     37struct t_obsInternal {
    6938  char   StatID[20+1]; // Station ID
    7039  char   satSys;       // Satellite System ('G' or 'R')
     
    7645  double C1;           // CA-code pseudorange (meters)
    7746  double P1;           // P1-code pseudorange (meters)
    78   double L1;           // L1 carrier phase (cycles)
    79   double S1;           // raw L1 signal strength
     47  double L1C;          // L1 carrier phase (cycles)
     48  double D1C;          // Doppler L1
     49  double S1C;          // raw L1 signal strength
     50  double L1P;          // L1 carrier phase (cycles)
     51  double D1P;          // Doppler L1
     52  double S1P;          // raw L1 signal strength
    8053
    8154  double C2;           // CA-code pseudorange (meters)
    8255  double P2;           // P2-code pseudorange (meters)
    83   double L2;           // L2 carrier phase (cycles)
    84   double S2;           // raw L2 signal strength
     56  double L2C;          // L2 carrier phase (cycles)
     57  double D2C;          // Doppler L2
     58  double S2C;          // raw L2 signal strength
     59  double L2P;          // L2 carrier phase (cycles)
     60  double D2P;          // Doppler L2
     61  double S2P;          // raw L2 signal strength
    8562
    8663  double C5;           // Pseudorange (meters)
    8764  double L5;           // L5 carrier phase (cycles)
     65  double D5;           // Doppler L5
    8866  double S5;           // raw L5 signal strength
    8967
     
    9775  enum t_obs_status {initial, posted, received};
    9876  t_obs() {
    99     _status = initial;
     77    _status        = initial;
     78    _o.satSys      = 'G';
     79    _o.satNum      = 0;
     80    _o.slotNum     = 0;
     81    _o.GPSWeek     = 0;
     82    _o.GPSWeeks    = 0.0;
     83    _o.C1          = 0.0;
     84    _o.P1          = 0.0;
     85    _o.L1C         = 0.0;
     86    _o.D1C         = 0.0;
     87    _o.S1C         = 0.0;
     88    _o.L1P         = 0.0;
     89    _o.D1P         = 0.0;
     90    _o.S1P         = 0.0;
     91    _o.C2          = 0.0;
     92    _o.P2          = 0.0;
     93    _o.L2C         = 0.0;
     94    _o.D2C         = 0.0;
     95    _o.S2C         = 0.0;
     96    _o.L2P         = 0.0;
     97    _o.D2P         = 0.0;
     98    _o.S2P         = 0.0;
     99    _o.C5          = 0.0;
     100    _o.L5          = 0.0;
     101    _o.D5          = 0.0;
     102    _o.S5          = 0.0;
     103    _o.slip_cnt_L1 = -1;
     104    _o.slip_cnt_L2 = -1;
     105    _o.slip_cnt_L5 = -1;
     106    _o.StatID[0]   = '\x0';
    100107  }
    101108  ~t_obs() {}
     109  double L1() const {return (_o.L1P != 0.0 ? _o.L1P : _o.L1C);}
     110  double L2() const {return (_o.L2P != 0.0 ? _o.L2P : _o.L2C);}
     111  double S1() const {return (_o.L1P != 0.0 ? _o.S1P : _o.S1C);}
     112  double S2() const {return (_o.L2P != 0.0 ? _o.S2P : _o.S2C);}
    102113  t_obsInternal _o;
    103114  t_obs_status  _status;
  • trunk/BNC/RTCM/RTCM2Decoder.cpp

    r2689 r2702  
    155155          obs->_o.P1            = _ObsBlock.rng_P1[iSat];
    156156          obs->_o.P2            = _ObsBlock.rng_P2[iSat];
    157           obs->_o.L1            = _ObsBlock.resolvedPhase_L1(iSat);
    158           obs->_o.L2            = _ObsBlock.resolvedPhase_L2(iSat);
     157          obs->_o.L1P           = _ObsBlock.resolvedPhase_L1(iSat);
     158          obs->_o.L2P           = _ObsBlock.resolvedPhase_L2(iSat);
    159159          obs->_o.slip_cnt_L1   = _ObsBlock.slip_L1[iSat];
    160160          obs->_o.slip_cnt_L2   = _ObsBlock.slip_L2[iSat];
     
    394394        switch (ii) {
    395395        case 0: // --- L1 ---
    396           new_obs->_o.L1 = *obsVal / LAMBDA_1;
     396          new_obs->_o.L1P = *obsVal / LAMBDA_1;
    397397          new_obs->_o.slip_cnt_L1   = corr->lock1;
    398398          break;
    399399        case 1: // --- L2 ---
    400           new_obs->_o.L2 = *obsVal / LAMBDA_2;
     400          new_obs->_o.L2P = *obsVal / LAMBDA_2;
    401401          new_obs->_o.slip_cnt_L2   = corr->lock2;
    402402          break;
  • trunk/BNC/RTCM3/RTCM3Decoder.cpp

    r2691 r2702  
    357357
    358358                  if      (iEntry == GNSSENTRY_C1DATA) {
    359                     obs->_o.C1 = gnssData.measdata[iSat][iEntry];
     359                    obs->_o.C1  = gnssData.measdata[iSat][iEntry];
    360360                  }
    361361                  else if (iEntry == GNSSENTRY_C2DATA) {
    362                     obs->_o.C2 = gnssData.measdata[iSat][iEntry];
     362                    obs->_o.C2  = gnssData.measdata[iSat][iEntry];
    363363                  }
    364364                  else if (iEntry == GNSSENTRY_P1DATA) {
    365                     obs->_o.P1 = gnssData.measdata[iSat][iEntry];
     365                    obs->_o.P1  = gnssData.measdata[iSat][iEntry];
    366366                  }
    367367                  else if (iEntry == GNSSENTRY_P2DATA) {
    368                     obs->_o.P2 = gnssData.measdata[iSat][iEntry];
    369                   }
    370                   else if (iEntry == GNSSENTRY_L1CDATA ||
    371                            iEntry == GNSSENTRY_L1PDATA) {
    372                     obs->_o.L1   = gnssData.measdata[iSat][iEntry];
    373                   }
    374                   else if (iEntry == GNSSENTRY_L2CDATA ||
    375                            iEntry == GNSSENTRY_L2PDATA) {
    376                     obs->_o.L2   = gnssData.measdata[iSat][iEntry];
    377                   }
    378                   else if (iEntry == GNSSENTRY_S1CDATA ||
    379                            iEntry == GNSSENTRY_S1PDATA) {
    380                     obs->_o.S1   = gnssData.measdata[iSat][iEntry];
    381                   }
    382                   else if (iEntry == GNSSENTRY_S2CDATA ||
    383                            iEntry == GNSSENTRY_S2PDATA) {
    384                     obs->_o.S2   = gnssData.measdata[iSat][iEntry];
     368                    obs->_o.P2  = gnssData.measdata[iSat][iEntry];
     369                  }
     370                  else if (iEntry == GNSSENTRY_L1CDATA) {
     371                    obs->_o.L1C = gnssData.measdata[iSat][iEntry];
     372                  }
     373                  else if (iEntry == GNSSENTRY_L1PDATA) {
     374                    obs->_o.L1P = gnssData.measdata[iSat][iEntry];
     375                  }
     376                  else if (iEntry == GNSSENTRY_L2CDATA) {
     377                    obs->_o.L2C = gnssData.measdata[iSat][iEntry];
     378                  }
     379                  else if (iEntry == GNSSENTRY_L2PDATA) {
     380                    obs->_o.L2P = gnssData.measdata[iSat][iEntry];
     381                  }
     382                  else if (iEntry == GNSSENTRY_D1CDATA) {
     383                    obs->_o.D1C = gnssData.measdata[iSat][iEntry];
     384                  }
     385                  else if (iEntry == GNSSENTRY_D1PDATA) {
     386                    obs->_o.D1P = gnssData.measdata[iSat][iEntry];
     387                  }
     388                  else if (iEntry == GNSSENTRY_S1CDATA) {
     389                    obs->_o.S1C = gnssData.measdata[iSat][iEntry];
     390                  }
     391                  else if (iEntry == GNSSENTRY_S1PDATA) {
     392                    obs->_o.S1P = gnssData.measdata[iSat][iEntry];
     393                  }
     394                  else if (iEntry == GNSSENTRY_D2CDATA) {
     395                    obs->_o.D2C = gnssData.measdata[iSat][iEntry];
     396                  }
     397                  else if (iEntry == GNSSENTRY_D2PDATA) {
     398                    obs->_o.D2P = gnssData.measdata[iSat][iEntry];
     399                  }
     400                  else if (iEntry == GNSSENTRY_S2CDATA) {
     401                    obs->_o.S2C = gnssData.measdata[iSat][iEntry];
     402                  }
     403                  else if (iEntry == GNSSENTRY_S2PDATA) {
     404                    obs->_o.S2P = gnssData.measdata[iSat][iEntry];
    385405                  }
    386406                  else if (iEntry == GNSSENTRY_C5DATA) {
    387                     obs->_o.C5 = gnssData.measdata[iSat][iEntry];
     407                    obs->_o.C5  = gnssData.measdata[iSat][iEntry];
    388408                  }
    389409                  else if (iEntry == GNSSENTRY_L5DATA) {
    390                     obs->_o.L5 = gnssData.measdata[iSat][iEntry];
     410                    obs->_o.L5  = gnssData.measdata[iSat][iEntry];
     411                  }
     412                  else if (iEntry == GNSSENTRY_D5DATA) {
     413                    obs->_o.D5  = gnssData.measdata[iSat][iEntry];
    391414                  }
    392415                  else if (iEntry == GNSSENTRY_S5DATA) {
    393                     obs->_o.S5 = gnssData.measdata[iSat][iEntry];
     416                    obs->_o.S5  = gnssData.measdata[iSat][iEntry];
    394417                  }
    395418                }
  • trunk/BNC/RTIGS/RTIGSDecoder.cpp

    r2690 r2702  
    125125      obs->_o.P1       = _GPSTrans.DecObs.Obs[ii].p1_pseudo_range;
    126126      obs->_o.P2       = _GPSTrans.DecObs.Obs[ii].p2_pseudo_range;
    127       obs->_o.L1       = _GPSTrans.DecObs.Obs[ii].p1_phase;
    128       obs->_o.L2       = _GPSTrans.DecObs.Obs[ii].p2_phase;
    129       obs->_o.S1       = _GPSTrans.DecObs.Obs[ii].l1_sn;
    130       obs->_o.S2       = _GPSTrans.DecObs.Obs[ii].l2_sn;
     127      obs->_o.L1P      = _GPSTrans.DecObs.Obs[ii].p1_phase;
     128      obs->_o.L2P      = _GPSTrans.DecObs.Obs[ii].p2_phase;
     129      obs->_o.S1P      = _GPSTrans.DecObs.Obs[ii].l1_sn;
     130      obs->_o.S2P      = _GPSTrans.DecObs.Obs[ii].l2_sn;
    131131    }
    132132  }
  • trunk/BNC/bnccaster.cpp

    r2701 r2702  
    5555 public:
    5656
    57   t_oldObsInternal(const t_obsInternal obs) {
    58     strcpy(StatID, obs.StatID);
     57  t_oldObsInternal(const t_obs* obs) {
     58    strcpy(StatID, obs->_o.StatID);
    5959    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->_o.satSys;
     61    satNum        = obs->_o.satNum;
     62    slot          = obs->_o.slotNum;
     63    GPSWeek       = obs->_o.GPSWeek;
     64    GPSWeeks      = obs->_o.GPSWeeks;
     65    C1            = obs->_o.C1;
     66    C2            = obs->_o.C2;
     67    P1            = obs->_o.P1;
     68    P2            = obs->_o.P2;
     69    L1            = obs->L1();
     70    L2            = obs->L2();
     71    slip_cnt_L1   = obs->_o.slip_cnt_L1;
     72    slip_cnt_L2   = obs->_o.slip_cnt_L2;
    7373    lock_timei_L1 = -1;
    7474    lock_timei_L2 = -1;
    75     S1            = obs.S1;
    76     S2            = obs.S2;
     75    S1            = obs->S1();
     76    S2            = obs->S2();
    7777    SNR1          = 0;
    7878    SNR2          = 0;
     
    237237        }
    238238        if (OLD_OBS_FORMAT) {
    239           t_oldObsInternal oldObs(obs->_o);
     239          t_oldObsInternal oldObs(obs);
    240240          int numBytes = sizeof(oldObs);
    241241          if (myWrite(sock, (const char*)(&oldObs), numBytes) != numBytes) {
     
    431431              }
    432432              if (OLD_OBS_FORMAT) {
    433                 t_oldObsInternal oldObs(obs->_o);
     433                t_oldObsInternal oldObs(obs);
    434434                int numBytes = sizeof(oldObs);
    435435                if (myWrite(sock, (const char*)(&oldObs), numBytes) != numBytes) {
  • trunk/BNC/bncpppclient.cpp

    r2667 r2702  
    119119//
    120120////////////////////////////////////////////////////////////////////////////
    121 void bncPPPclient::putNewObs(p_obs pp) {
     121void bncPPPclient::putNewObs(p_obs pObs) {
    122122  QMutexLocker locker(&_mutex);
    123123
    124   t_obsInternal* obs = &(pp->_o);
     124  t_obsInternal* obs = &(pObs->_o);
    125125
    126126  if (obs->satSys != 'G' && !_useGlonass) {
     
    206206  // Set Phase Observations
    207207  // ---------------------- 
    208   if (obs->L1 && obs->L2) {
    209     satData->L1 = obs->L1 * t_CST::c / f1;
    210     satData->L2 = obs->L2 * t_CST::c / f2;
     208  if (pObs->L1() && pObs->L2()) {
     209    satData->L1 = pObs->L1() * t_CST::c / f1;
     210    satData->L2 = pObs->L2() * t_CST::c / f2;
    211211  }
    212212  else {
  • trunk/BNC/bncrinex.cpp

    r2696 r2702  
    640640      _out << setw(14) << setprecision(3) << obs->_o.C1 << ' '  << ' '
    641641           << setw(14) << setprecision(3) << obs->_o.P1 << ' '  << ' '
    642            << setw(14) << setprecision(3) << obs->_o.L1 << lli1 << ' '
    643            << setw(14) << setprecision(3) << obs->_o.S1 << ' '  << ' '
     642           << setw(14) << setprecision(3) << obs->L1() << lli1 << ' '
     643           << setw(14) << setprecision(3) << obs->S1() << ' '  << ' '
    644644           << setw(14) << setprecision(3) << obs->_o.C2 << ' '  << ' ' << endl
    645645           << setw(14) << setprecision(3) << obs->_o.P2 << ' '  << ' '
    646            << setw(14) << setprecision(3) << obs->_o.L2 << lli2 << ' '
    647            << setw(16) << setprecision(3) << obs->_o.S2 << endl;
     646           << setw(14) << setprecision(3) << obs->L2() << lli2 << ' '
     647           << setw(16) << setprecision(3) << obs->S2() << endl;
    648648    }
    649649
     
    683683    str << obs.satSys
    684684        << setw(2) << setfill('0') << obs.satNum << setfill(' ')
    685         << setw(14) << setprecision(3) << obs.C1 << ' '  << ' ' 
    686         << setw(14) << setprecision(3) << obs.P1 << ' '  << ' ' 
    687         << setw(14) << setprecision(3) << obs.L1 << lli1 << ' '
    688         << setw(14) << setprecision(3) << obs.S1 << ' '  << ' '
    689         << setw(14) << setprecision(3) << obs.C2 << ' '  << ' ' 
    690         << setw(14) << setprecision(3) << obs.P2 << ' '  << ' '
    691         << setw(14) << setprecision(3) << obs.L2 << lli2 << ' '
    692         << setw(14) << setprecision(3) << obs.S2 << ' '  << ' '
    693         << setw(14) << setprecision(3) << obs.C5 << ' '  << ' ' 
    694         << setw(14) << setprecision(3) << obs.L5 << lli5 << ' '
     685        << setw(14) << setprecision(3) << obs.C1  << ' '  << ' ' 
     686        << setw(14) << setprecision(3) << obs.P1  << ' '  << ' ' 
     687        << setw(14) << setprecision(3) << obs.L1C << lli1 << ' '
     688        << setw(14) << setprecision(3) << obs.S1C << ' '  << ' '
     689        << setw(14) << setprecision(3) << obs.C2  << ' '  << ' ' 
     690        << setw(14) << setprecision(3) << obs.P2  << ' '  << ' '
     691        << setw(14) << setprecision(3) << obs.L2C << lli2 << ' '
     692        << setw(14) << setprecision(3) << obs.S2C << ' '  << ' '
     693        << setw(14) << setprecision(3) << obs.C5  << ' '  << ' ' 
     694        << setw(14) << setprecision(3) << obs.L5  << lli5 << ' '
    695695        << setw(14) << setprecision(3) << obs.S5;
    696696  }
     
    698698    str << obs.satSys
    699699        << setw(2) << setfill('0') << obs.satNum << setfill(' ')
    700         << setw(14) << setprecision(3) << obs.C1 << ' '  << ' ' 
    701         << setw(14) << setprecision(3) << obs.P1 << ' '  << ' ' 
    702         << setw(14) << setprecision(3) << obs.L1 << lli1 << ' '
    703         << setw(14) << setprecision(3) << obs.S1 << ' '  << ' '
    704         << setw(14) << setprecision(3) << obs.C2 << ' '  << ' ' 
    705         << setw(14) << setprecision(3) << obs.P2 << ' '  << ' '
    706         << setw(14) << setprecision(3) << obs.L2 << lli2 << ' '
    707         << setw(14) << setprecision(3) << obs.S2;
     700        << setw(14) << setprecision(3) << obs.C1  << ' '  << ' ' 
     701        << setw(14) << setprecision(3) << obs.P1  << ' '  << ' ' 
     702        << setw(14) << setprecision(3) << obs.L1C << lli1 << ' '
     703        << setw(14) << setprecision(3) << obs.S1C << ' '  << ' '
     704        << setw(14) << setprecision(3) << obs.C2  << ' '  << ' ' 
     705        << setw(14) << setprecision(3) << obs.P2  << ' '  << ' '
     706        << setw(14) << setprecision(3) << obs.L2C << lli2 << ' '
     707        << setw(14) << setprecision(3) << obs.S2C;
    708708  }
    709709  else if (obs.satSys == 'S') { // SBAS
    710710    str << obs.satSys
    711711        << setw(2) << setfill('0') << obs.satNum << setfill(' ')
    712         << setw(14) << setprecision(3) << obs.C1 << ' '  << ' ' 
    713         << setw(14) << setprecision(3) << obs.P1 << ' '  << ' ' 
    714         << setw(14) << setprecision(3) << obs.L1 << lli1 << ' '
    715         << setw(14) << setprecision(3) << obs.S1;
     712        << setw(14) << setprecision(3) << obs.C1  << ' '  << ' ' 
     713        << setw(14) << setprecision(3) << obs.P1  << ' '  << ' ' 
     714        << setw(14) << setprecision(3) << obs.L1C << lli1 << ' '
     715        << setw(14) << setprecision(3) << obs.S1C;
    716716  }
    717717  else if (obs.satSys == 'E') { // Galileo
    718718    str << obs.satSys
    719719        << setw(2) << setfill('0') << obs.satNum << setfill(' ')
    720         << setw(14) << setprecision(3) << obs.C1 << ' '  << ' ' 
    721         << setw(14) << setprecision(3) << obs.L1 << lli1 << ' '
    722         << setw(14) << setprecision(3) << obs.S1 << ' '  << ' '
    723         << setw(14) << setprecision(3) << obs.C5 << ' '  << ' ' 
    724         << setw(14) << setprecision(3) << obs.L5 << lli5 << ' '
     720        << setw(14) << setprecision(3) << obs.C1  << ' '  << ' ' 
     721        << setw(14) << setprecision(3) << obs.L1C << lli1 << ' '
     722        << setw(14) << setprecision(3) << obs.S1C << ' '  << ' '
     723        << setw(14) << setprecision(3) << obs.C5  << ' '  << ' ' 
     724        << setw(14) << setprecision(3) << obs.L5  << lli5 << ' '
    725725        << setw(14) << setprecision(3) << obs.S5;
    726726  }
Note: See TracChangeset for help on using the changeset viewer.