Changeset 4758 in ntrip


Ignore:
Timestamp:
Oct 22, 2012, 3:10:48 PM (12 years ago)
Author:
mervart
Message:
 
Location:
trunk/BNC/src/RTRover
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/BNC/src/RTRover/bncrtrover.cpp

    r4757 r4758  
    33#include <string.h>
    44
    5 #include "dllinterface.h"
     5#include "bncrtrover.h"
    66#include "bncapp.h"
    77#include "bncsettings.h"
    88#include "bnctime.h"
    99
    10 #include "../GPC.h"
     10#include "rtrover_interface.h"
    1111
    1212using namespace std;
     
    1414// Constructor
    1515////////////////////////////////////////////////////////////////////////////
    16 t_dllInterface::t_dllInterface() {
     16t_bncRtrover::t_bncRtrover() {
    1717
    1818  bncSettings settings;
     
    2424  // Define Input Options
    2525  // --------------------
    26   GPSS::gpcOpt opt;
    27   opt.sigmaCode     = settings.value("pppSigmaCode").toDouble();
    28   opt.sigmaPhase    = settings.value("pppSigmaPhase").toDouble();
    29   opt.sigCrd0       = settings.value("pppSigCrd0").toDouble();
    30   opt.sigCrdP       = settings.value("pppSigCrdP").toDouble();
    31   opt.sigTrp0       = settings.value("pppSigTrp0").toDouble();
    32   opt.sigTrpP       = settings.value("pppSigTrpP").toDouble();
    33   opt.refCrd[0]     = settings.value("pppRefCrdX").toDouble();
    34   opt.refCrd[1]     = settings.value("pppRefCrdY").toDouble();
    35   opt.refCrd[2]     = settings.value("pppRefCrdZ").toDouble();
    36   opt.antEccNEU[0]  = settings.value("pppRefdN").toDouble();
    37   opt.antEccNEU[1]  = settings.value("pppRefdE").toDouble();
    38   opt.antEccNEU[2]  = settings.value("pppRefdU").toDouble();
    39   opt.maxSolGap     = settings.value("pppMaxSolGap").toInt();
    40   opt.corrSync      = settings.value("pppSync").toDouble();
    41   opt.quickStart    = settings.value("pppQuickStart").toInt();
    42   opt.pppMode       = (settings.value("pppSPP").toString() == "PPP") ? 1 : 0;
    43   opt.usePhase      = (Qt::CheckState(settings.value("pppUsePhase").toInt()) == Qt::Checked) ? 1 : 0;
    44   opt.estTropo      = (Qt::CheckState(settings.value("pppEstTropo").toInt()) == Qt::Checked) ? 1 : 0;
    45   opt.useGlonass    = (Qt::CheckState(settings.value("pppGLONASS").toInt()) == Qt::Checked) ? 1 : 0;
    46   opt.useGalileo    = 0;
    47   opt.antexFileName = strdup(settings.value("pppAntex").toByteArray().constData());
    48   opt.antennaName   = strdup(settings.value("pppAntenna").toByteArray().constData());
    49 
    50   // Initialize DLL Client
    51   // ---------------------
    52   GPSS::gpcInit(&opt);
    53 
    54   free(opt.antexFileName);
    55   free(opt.antennaName);
    5626
    5727  // Connect to BNC Signals
     
    7242// Destructor
    7343////////////////////////////////////////////////////////////////////////////
    74 t_dllInterface::~t_dllInterface() {
     44t_bncRtrover::~t_bncRtrover() {
    7545  QMapIterator<QString, t_corr*> ic(_corr);
    7646  while (ic.hasNext()) {
     
    7848    delete ic.value();
    7949  }
    80   GPSS::gpcDestroy();
     50  rtrover_destroy();
    8151}
    8252
    8353//
    8454////////////////////////////////////////////////////////////////////////////
    85 void t_dllInterface::slotNewEphGPS(gpsephemeris gpseph) {
     55void t_bncRtrover::slotNewEphGPS(gpsephemeris gpseph) {
    8656  QMutexLocker locker(&_mutex);
    87 
    88   GPSS::gpcEphGPS eph;
    89   eph.prn             = gpseph.satellite;
    90   eph.GPSweek         = gpseph.GPSweek;
    91   eph.GPSweeks        = gpseph.TOC;
    92   eph.TOE             = gpseph.TOE;
    93   eph.IODC            = gpseph.IODC;
    94   eph.clock_bias      = gpseph.clock_bias;
    95   eph.clock_drift     = gpseph.clock_drift;
    96   eph.clock_driftrate = gpseph.clock_driftrate;
    97   eph.Crs             = gpseph.Crs;
    98   eph.Delta_n         = gpseph.Delta_n;
    99   eph.M0              = gpseph.M0;
    100   eph.Cuc             = gpseph.Cuc;
    101   eph.ee              = gpseph.e;
    102   eph.Cus             = gpseph.Cus;
    103   eph.sqrt_A          = gpseph.sqrt_A;
    104   eph.Cic             = gpseph.Cic;
    105   eph.OMEGA0          = gpseph.OMEGA0;
    106   eph.Cis             = gpseph.Cis;
    107   eph.i0              = gpseph.i0;
    108   eph.Crc             = gpseph.Crc;
    109   eph.omega           = gpseph.omega;
    110   eph.OMEGADOT        = gpseph.OMEGADOT;
    111   eph.IDOT            = gpseph.IDOT;
    112 
    113   GPSS::gpcPutEphGPS(&eph);
    11457}
    11558
    11659//
    11760////////////////////////////////////////////////////////////////////////////
    118 void t_dllInterface::slotNewEphGlonass(glonassephemeris gloeph) {
     61void t_bncRtrover::slotNewEphGlonass(glonassephemeris gloeph) {
    11962  QMutexLocker locker(&_mutex);
    12063
     
    12871  updatetime(&wwGPS, &towGPS, gloeph.tb*1000, 0);  // Moscow -> GPS
    12972  bncTime tGPS(wwGPS,towGPS);
    130 
    131   GPSS::gpcEphGLO eph;
    132   eph.satSlotNumber  = gloeph.almanac_number;
    133   eph.mjdUTC         = tUTC.mjd();
    134   eph.secUTC         = tUTC.daysec();
    135   eph.gps_utc        = tGPS - tUTC;
    136   eph.tau            = gloeph.tau;
    137   eph.gamma          = gloeph.gamma;
    138   eph.x_pos          = gloeph.x_pos;
    139   eph.x_velocity     = gloeph.x_velocity;
    140   eph.x_acceleration = gloeph.x_acceleration;
    141   eph.y_pos          = gloeph.y_pos;
    142   eph.y_velocity     = gloeph.y_velocity;
    143   eph.y_acceleration = gloeph.y_acceleration;
    144   eph.z_pos          = gloeph.z_pos;
    145   eph.z_velocity     = gloeph.z_velocity;
    146   eph.z_acceleration = gloeph.z_acceleration;
    147 
    148   GPSS::gpcPutEphGLO(&eph);
    14973}
    15074 
    15175//
    15276////////////////////////////////////////////////////////////////////////////
    153 void t_dllInterface::slotNewEphGalileo(galileoephemeris /* galeph */) {
     77void t_bncRtrover::slotNewEphGalileo(galileoephemeris /* galeph */) {
    15478  // not yet implemented
    15579}
     
    15781//
    15882////////////////////////////////////////////////////////////////////////////
    159 void t_dllInterface::slotNewCorrections(QList<QString> corrList) {
     83void t_bncRtrover::slotNewCorrections(QList<QString> corrList) {
    16084  QMutexLocker locker(&_mutex);
    16185
     
    211135    if (cc->ready()) {
    212136
    213       GPSS::gpcCorr corr;
    214       corr.satSys       = cc->prn[0].toAscii();
    215       corr.satNum       = cc->prn.mid(1).toInt();
    216       corr.GPSweek      = cc->tt.gpsw();
    217       corr.GPSweeks     = cc->tt.gpssec();
    218       corr.iod          = cc->iod;
    219       corr.dClk         = cc->dClk;
    220       corr.dotDClk      = cc->dotDClk;
    221       corr.dotDotDClk   = cc->dotDotDClk;
    222       corr.rao[0]       = cc->rao[0];
    223       corr.rao[1]       = cc->rao[1];
    224       corr.rao[2]       = cc->rao[2];
    225       corr.dotRao[0]    = cc->dotRao[0];
    226       corr.dotRao[1]    = cc->dotRao[1];
    227       corr.dotRao[2]    = cc->dotRao[2];
    228       corr.dotDotRao[0] = cc->dotDotRao[0];
    229       corr.dotDotRao[1] = cc->dotDotRao[1];
    230       corr.dotDotRao[2] = cc->dotDotRao[2];
    231       corr.raoSet       = cc->raoSet ? 1 : 0;
    232       corr.dClkSet      = cc->dClkSet ? 1 : 0;
    233 
    234       GPSS::gpcPutCorr(&corr);
    235137    }
    236138  }
    237 
    238139}
    239140
    240141//
    241142////////////////////////////////////////////////////////////////////////////
    242 void t_dllInterface::putNewObs(const t_obs& obsIn) {
     143void t_bncRtrover::putNewObs(const t_obs& obsIn) {
    243144  QMutexLocker locker(&_mutex);
    244145
     
    248149    bncTime epoTime(_epoch[0].GPSWeek, _epoch[0].GPSWeeks);
    249150    if (epoTime != obsTime) {
    250       const GPSS::gpcObs* allObs[_epoch.size()];
     151      ////      const GPSS::gpcObs* allObs[_epoch.size()];
    251152      for (unsigned iObs = 0; iObs < _epoch.size(); iObs++) {
    252153        t_obs& obs = _epoch[iObs];
    253         GPSS::gpcObs* gpcObs = new GPSS::gpcObs();
    254154
    255         gpcObs->satSys      = obs.satSys;
    256         gpcObs->satNum      = obs.satNum;
    257         gpcObs->slotNum     = obs.slotNum;
    258         gpcObs->GPSweek     = obs.GPSWeek;
    259         gpcObs->GPSweeks    = obs.GPSWeeks;
    260         gpcObs->C1          = obs.C1;
    261         gpcObs->L1C         = obs.L1C;
    262         gpcObs->D1C         = obs.D1C;
    263         gpcObs->S1C         = obs.S1C;
    264         gpcObs->P1          = obs.P1;
    265         gpcObs->L1P         = obs.L1P;
    266         gpcObs->D1P         = obs.D1P;
    267         gpcObs->S1P         = obs.S1P;
    268         gpcObs->C2          = obs.C2;
    269         gpcObs->L2C         = obs.L2C;
    270         gpcObs->D2C         = obs.D2C;
    271         gpcObs->S2C         = obs.S2C;
    272         gpcObs->P2          = obs.P2;
    273         gpcObs->L2P         = obs.L2P;
    274         gpcObs->D2P         = obs.D2P;
    275         gpcObs->S2P         = obs.S2P;
    276         gpcObs->C5          = obs.C5;
    277         gpcObs->L5          = obs.L5;
    278         gpcObs->D5          = obs.D5;
    279         gpcObs->S5          = obs.S5;
    280         gpcObs->slip_cnt_L1 = obs.slip_cnt_L1;
    281         gpcObs->slip_cnt_L2 = obs.slip_cnt_L2;
    282         gpcObs->slip_cnt_L5 = obs.slip_cnt_L5;
    283 
    284         allObs[iObs] = gpcObs;
    285155      }
    286156
    287       GPSS::gpcResult res;
    288       GPSS::gpcProcessEpoch(_epoch.size(), allObs, &res);
    289 
    290       for (unsigned iObs = 0; iObs < _epoch.size(); iObs++) {
    291         delete allObs[iObs];
    292       }
     157//      for (unsigned iObs = 0; iObs < _epoch.size(); iObs++) {
     158//        delete allObs[iObs];
     159//      }
    293160
    294161      _epoch.clear();
  • trunk/BNC/src/RTRover/bncrtrover.h

    r4757 r4758  
    1 #ifndef DLLINTERFACE_H
    2 #define DLLINTERFACE_H
     1#ifndef BNCRTROVER_H
     2#define BNCRTROVER_H
    33
    44#include <vector>
     
    77#include "bncephuser.h"
    88
    9 class t_dllInterface : QObject {
     9class t_bncRtrover : QObject {
    1010 Q_OBJECT
    1111
    1212 public:
    13   t_dllInterface();
    14   ~t_dllInterface();
     13  t_bncRtrover();
     14  ~t_bncRtrover();
    1515  void putNewObs(const t_obs& pp);
    1616
Note: See TracChangeset for help on using the changeset viewer.