Changeset 6665 in ntrip for trunk/BNC


Ignore:
Timestamp:
Mar 15, 2015, 12:58:20 PM (10 years ago)
Author:
weber
Message:

Documentation completed

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/BNC/src/bncwindow.cpp

    r6664 r6665  
    423423 
    424424  _cmbMaxresLineEdit = new QLineEdit(settings.value("cmbMaxres").toString());
    425   _cmbAntexFile      = new qtFileChooser(0, qtFileChooser::File);
    426   _cmbAntexFile->setFileName(settings.value("cmbAntexFile").toString());
    427425  _cmbUseGlonass     = new QCheckBox();
    428426  _cmbUseGlonass->setCheckState(Qt::CheckState(settings.value("cmbUseGlonass").toInt()));
     
    454452    enableWidget(true, _cmbMethodComboBox);
    455453    _cmbMaxresLineEdit->setStyleSheet("background-color: white");
    456     _cmbAntexFile->setStyleSheet("background-color: white");
    457454    _cmbSamplSpinBox->setStyleSheet("background-color: white");
    458455    _cmbMaxresLineEdit->setEnabled(true);
    459456    _cmbSamplSpinBox->setEnabled(true);
    460     _cmbAntexFile->setEnabled(true);
    461457    _cmbUseGlonass->setEnabled(true);
    462458  }
     
    464460    enableWidget(false, _cmbMethodComboBox);
    465461    _cmbMaxresLineEdit->setStyleSheet("background-color: lightGray");
    466     _cmbAntexFile->setStyleSheet("background-color: lightGray");
    467462    _cmbSamplSpinBox->setStyleSheet("background-color: lightGray");
    468463    _cmbMaxresLineEdit->setEnabled(false);
    469464    _cmbSamplSpinBox->setEnabled(false);
    470     _cmbAntexFile->setEnabled(false);
    471465    _cmbUseGlonass->setEnabled(false);
    472466  }
     
    508502  }
    509503
     504  _uploadAntexFile      = new qtFileChooser(0, qtFileChooser::File);
     505  _uploadAntexFile->setFileName(settings.value("uploadAntexFile").toString());
     506
    510507  _uploadSamplRtcmEphCorrSpinBox = new QSpinBox;
    511508  _uploadSamplRtcmEphCorrSpinBox->setMinimum(0);
     
    538535    enableWidget(true, _uploadSamplSp3SpinBox);
    539536    enableWidget(true, _uploadSamplClkRnxSpinBox);
     537    enableWidget(true, _uploadAntexFile);
    540538  }
    541539  else {
     
    544542    enableWidget(false, _uploadSamplSp3SpinBox);
    545543    enableWidget(false, _uploadSamplClkRnxSpinBox);
     544    enableWidget(false, _uploadAntexFile);
    546545  }
    547546
     
    11101109
    11111110  populateCmbTable();
    1112   cmbLayout->addWidget(_cmbTable,                                            0, 0, 7, 3);
     1111  cmbLayout->addWidget(_cmbTable,                                            0, 0, 8, 3);
    11131112  cmbLayout->addWidget(new QLabel(" Combine Broadcast Correction streams."), 1, 6, 1, 10);
    11141113  cmbLayout->addWidget(addCmbRowButton,                                      2, 6);
    11151114  cmbLayout->addWidget(delCmbRowButton,                                      2, 7);
    11161115  cmbLayout->addWidget(new QLabel("Method"),                                 3, 6, Qt::AlignRight);
    1117   cmbLayout->addWidget(_cmbMethodComboBox,                                   3, 7, Qt::AlignRight);
     1116  cmbLayout->addWidget(_cmbMethodComboBox,                                   3, 7);
    11181117  cmbLayout->addWidget(new QLabel(" Maximal residuum"),                      4, 6, Qt::AlignRight);
    11191118  cmbLayout->addWidget(_cmbMaxresLineEdit,                                   4, 7, Qt::AlignRight);
    1120   cmbLayout->addWidget(new QLabel("ANTEX file"),                             4, 8, Qt::AlignRight);
    1121   cmbLayout->addWidget(_cmbAntexFile,                                        4, 9, 1, 7);
    11221119  cmbLayout->addWidget(new QLabel("Sampling"),                               5, 6, Qt::AlignRight);
    1123   cmbLayout->addWidget(_cmbSamplSpinBox,                                     5, 7, Qt::AlignRight);
    1124   cmbLayout->addWidget(new QLabel("   Use GLONASS"),                         5, 8, Qt::AlignRight);
    1125   cmbLayout->addWidget(_cmbUseGlonass,                                       5, 9);
    1126   cmbLayout->setRowStretch(6, 999);
     1120  cmbLayout->addWidget(_cmbSamplSpinBox,                                     5, 7);
     1121  cmbLayout->addWidget(new QLabel("   Use GLONASS"),                         6, 6, Qt::AlignRight);
     1122  cmbLayout->addWidget(_cmbUseGlonass,                                       6, 7);
     1123  cmbLayout->setRowStretch(7, 999);
    11271124
    11281125  connect(addCmbRowButton, SIGNAL(clicked()), this, SLOT(slotAddCmbRow()));
     
    11501147  uploadHlpLayout->addWidget(_uploadSamplClkRnxSpinBox,           0, 9);
    11511148  uploadHlpLayout->addWidget(setUploadTrafoButton,                0,10);
     1149  uploadHlpLayout->addWidget(new QLabel("ANTEX file"),            1, 0, Qt::AlignLeft);
     1150  uploadHlpLayout->addWidget(_uploadAntexFile,                    1, 1, 1, 4);
     1151  uploadHlpLayout->setRowStretch(1, 999);
    11521152
    11531153  QBoxLayout* uploadLayout = new QBoxLayout(QBoxLayout::TopToBottom);
     
    12551255  _reqcEditOptionButton->setWhatsThis(tr("<p>Specify options for editing RINEX v2 or v3 files.</p>"));
    12561256  _bncFigurePPP->setWhatsThis(tr("PPP time series of North (red), East (green) and Up (blue) coordinate components are shown in the 'PPP Plot' tab when the corresponting option is selected above. Values are either referred to an XYZ reference coordinate (if specified) or referred to the first estimated set of coordinate compoments. The sliding PPP time series window covers the period of the latest 5 minutes."));
    1257   _cmbTable->setWhatsThis(tr("<p>BNC allows to process several orbit and clock corrections streams in real-time to produce, encode, upload and save a combination of correctors coming from various providers. Hit the 'Add Row' button, double click on the 'Mountpoint' field to enter a Broadcast Ephemeris corrections mountpoint from the 'Streams' section below and hit Enter. Then double click on the 'AC Name' field to enter your choice of an abbreviation for the Analysis Center (AC) providing the stream. Finally, double click on the 'Weight' field to enter the weight to be applied for this stream in the combination.<ul><li>Note that an appropriate 'Wait for full corr epoch' value needs to be specified for the combination under the 'Broadcast Corrections' tab. A value of 15 seconds would make sense there if the update rate of incoming clock corrections is i.e. 10 seconds.</li><li>Note also that you need to tick 'Use GLONASS' which is part ot the 'PPP (2)' panel in case you want to produce an GPS plus GLONASS combination.</li></ul></p><p>Note further that the orbit information in the final combination stream is just copied from one of the incoming streams. The stream used for providing the orbits may vary over time: if the orbit providing stream has an outage then BNC switches to the next remaining stream for getting hold of the orbit information.</p><p>The combination process requires Broadcast Ephemeris. Besides the orbit and clock corrections stream(s) BNC should therefore pull a stream carrying Broadcast Ephemeris in the form of RTCM Version 3 messages.</p><p>It is possible to specify only one Broadcast Ephemeris corrections stream in the combination table. Instead of combining corrections BNC will then merge them with Broadcast Ephemeris to save results in SP3 and/or Clock RINEX format."));
     1257  _cmbTable->setWhatsThis(tr("<p>BNC allows to process several orbit and clock corrections streams in real-time to produce, encode, upload and save a combination of correctors coming from various providers. Hit the 'Add Row' button, double click on the 'Mountpoint' field to enter a Broadcast Ephemeris corrections mountpoint from the 'Streams' section below and hit Enter. Then double click on the 'AC Name' field to enter your choice of an abbreviation for the Analysis Center (AC) providing the stream. Finally, double click on the 'Weight' field to enter the weight to be applied for this stream in the combination.</p><p>Note that an appropriate 'Wait for full corr epoch' value needs to be specified for the combination under the 'Broadcast Corrections' tab. A value of 15 seconds would make sense there if the update rate of incoming clock corrections is i.e. 10 seconds.</p><p>Note further that the orbit information in the final combination stream is just copied from one of the incoming streams. The stream used for providing the orbits may vary over time: if the orbit providing stream has an outage then BNC switches to the next remaining stream for getting hold of the orbit information.</p><p>The combination process requires Broadcast Ephemeris. Besides the orbit and clock corrections stream(s) BNC should therefore pull a stream carrying Broadcast Ephemeris in the form of RTCM Version 3 messages.</p><p>It is possible to specify only one Broadcast Ephemeris corrections stream in the combination table. Instead of combining corrections BNC will then merge them with Broadcast Ephemeris to save results in SP3 and/or Clock RINEX format."));
    12581258  _cmbMaxresLineEdit->setWhatsThis(tr("<p>BNC combines all incoming clocks according to specified weights. Individual clock estimates that differ by more than 'Maximal Residuum' meters from the average of all clocks will be ignored.<p></p>It is suggested to specify a value of about 0.2 m for the Kalman filter combination approach and a value of about 3.0 meters for the Single-Epoch combination approach.</p><p>Default is a value of '999.0'.</p>"));
    12591259  _cmbSamplSpinBox->setWhatsThis(tr("<p>Specify a combination sampling interval for the Clocks. The clock corrections will be produced following that interval. A value of 10 sec may be an appropriate choice.</p>"));
    12601260  _cmbMethodComboBox->setWhatsThis(tr("<p>Select a clock combination approach. Options are 'Single-Epoch' and Kalman 'Filter'. It is suggested to use the Kalman filter approach for the purpose of Precise Point Positioning.</p>"));
    1261   _uploadTable->setWhatsThis(tr("<p>BNC can upload clock and orbit corrections to broadcast ephemeris (Broadcast Corrections) in RTCM Version 3 SSR format. You may have a situation where clocks and orbits come from an external Real-time Network Engine (1) or a situation where clock and orbit corrections are combined within BNC (2).</p><p>(1) BNC identifies a stream as coming from a Real-time Network Engine if its format is specified as 'RTNET' and hence its decoder string in the 'Streams' canvas is 'RTNET'. It encodes and uploads that stream to the specified NTRIP broadcaster</p><p>(2) BNC understands that it is expected to encode and upload combined Broadcast Ephemeris corrections if you specify correction streams in the 'Combine Corrections' stream table.</p><p>Hit the 'Add Row' button, double click on the 'Host' field to enter the IP or URL of an NTRIP broadcaster and hit Enter. Then double click on the 'Port', 'Mount' and 'Password' fields to enter the NTRIP broadcaster IP port (default is 80), the mountpoint and the stream upload password. An empty 'Host' option field means that you don't want to upload corrections.</p><p>Select a target coordinate reference system (e.g. IGS08) for outgoing clock and orbit corrections.</p><p>By default orbit and clock corrections refer to Antenna Phase Center (APC). Tick 'CoM' to refer uploaded corrections to Center of Mass instead of APC.</p><p>Specify a path for saving the generated Broadcast Corrections plus Broadcast Ephemeris as SP3 orbit files. If the specified directory does not exist, BNC will not create SP3 orbit files. The following is a path example for a Linux system:<br>/home/user/BNC${GPSWD}.sp3<br>Note that '${GPSWD}' produces the GPS Week and Day number in the file name.</p><ul><li>As an SP3 file contents should be referred to the satellites Center of Mass (CoM) while correctors are referred to the satellites Antenna Phase Center (APC), an offset has to be applied which is available from an IGS ANTEX file. You should therefore specify the 'ANTEX File' path under tab 'PPP (2)' if you want to save the stream contents in SP3 format. If you don't specify an 'ANTEX File' path there, the SP3 file contents will be referred to the satellites APCs.</li></ul></p><p>Specify a path for saving the generated Broadcast Correction clocks plus Broadcast Ephemeris clocks as Clock RINEX files. If the specified directory does not exist, BNC will not create Clock RINEX files. The following is a path example for a Linux system:<br>/home/user/BNC${GPSWD}.clk<br>Note that '${GPSWD}' produces the GPS Week and Day number in the file name.</p><p>Specify finally an SSR Provider ID number, an SSR Solution ID number and an Issue of Data SSR number.</p><p>In case the 'Combine Corrections' table contains only one Broadcast Corrections stream, BNC will merge that stream with Broadcast Ephemeris to save results in files specified here through SP3 and/or Clock RINEX file path. In such a case you should define only the SP3 and Clock RINEX file path and no further options in the 'Upload Corrections' table.</p>"));
     1261  _uploadTable->setWhatsThis(tr("<p>BNC can upload clock and orbit corrections to broadcast ephemeris (Broadcast Corrections) in RTCM Version 3 SSR format. You may have a situation where clocks and orbits come from an external Real-time Network Engine (1) or a situation where clock and orbit corrections are combined within BNC (2).</p><p>(1) BNC identifies a stream as coming from a Real-time Network Engine if its format is specified as 'RTNET' and hence its decoder string in the 'Streams' canvas is 'RTNET'. It encodes and uploads that stream to the specified NTRIP broadcaster</p><p>(2) BNC understands that it is expected to encode and upload combined Broadcast Ephemeris corrections if you specify correction streams in the 'Combine Corrections' stream table.</p><p>Hit the 'Add Row' button, double click on the 'Host' field to enter the IP or URL of an NTRIP broadcaster and hit Enter. Then double click on the 'Port', 'Mount' and 'Password' fields to enter the NTRIP broadcaster IP port (default is 80), the mountpoint and the stream upload password. An empty 'Host' option field means that you don't want to upload corrections.</p><p>Select a target coordinate reference system (e.g. IGS08) for outgoing clock and orbit corrections.</p><p>By default orbit and clock corrections refer to Antenna Phase Center (APC). Tick 'CoM' to refer uploaded corrections to Center of Mass instead of APC.</p><p>Specify a path for saving the generated Broadcast Corrections plus Broadcast Ephemeris as SP3 orbit files. If the specified directory does not exist, BNC will not create SP3 orbit files. The following is a path example for a Linux system:<br>/home/user/BNC${GPSWD}.sp3<br>Note that '${GPSWD}' produces the GPS Week and Day number in the file name.</p><p>As SP3 file contents should be referred to the satellites Center of Mass (CoM) while correctors are referred to the satellites Antenna Phase Center (APC), an offset has to be applied which is available from an IGS ANTEX file. You should therefore specify the 'ANTEX file' if you want to save the stream contents in SP3 format. If you don't specify an 'ANTEX file' path, the SP3 file contents will be referred to the satellites APCs.</p><p>Specify a path for saving the generated Broadcast Correction clocks plus Broadcast Ephemeris clocks as Clock RINEX files. If the specified directory does not exist, BNC will not create Clock RINEX files. The following is a path example for a Linux system:<br>/home/user/BNC${GPSWD}.clk<br>Note that '${GPSWD}' produces the GPS Week and Day number in the file name.</p><p>Specify finally an SSR Provider ID number, an SSR Solution ID number and an Issue of Data SSR number.</p><p>In case the 'Combine Corrections' table contains only one Broadcast Corrections stream, BNC will merge that stream with Broadcast Ephemeris to save results in files specified here through SP3 and/or Clock RINEX file path. In such a case you should define only the SP3 and Clock RINEX file path and no further options in the 'Upload Corrections' table.</p>"));
    12621262  addCmbRowButton->setWhatsThis(tr("Hit 'Add Row' button to add another line to the mountpoints table."));
    12631263  delCmbRowButton->setWhatsThis(tr("Hit 'Delete' button to delete the highlighted line from the mountpoints table."));
     
    16961696  settings.setValue("cmbMaxres",     _cmbMaxresLineEdit->text());
    16971697  settings.setValue("cmbSampl",      _cmbSamplSpinBox->value());
    1698   settings.setValue("cmbAntexFile",  _cmbAntexFile->fileName());
    16991698  settings.setValue("cmbUseGlonass", _cmbUseGlonass->checkState());
    17001699// Upload Corrections
     
    17091708  settings.setValue("uploadSamplSp3",         _uploadSamplSp3SpinBox->value());
    17101709  settings.setValue("uploadSamplClkRnx",      _uploadSamplClkRnxSpinBox->value());
     1710  settings.setValue("uploadAntexFile",        _uploadAntexFile->fileName());
    17111711// Upload Ephemeris
    17121712  settings.setValue("uploadEphHost",      _uploadEphHostLineEdit->text());
     
    21822182      enableWidget(true, _cmbMethodComboBox);
    21832183      _cmbMaxresLineEdit->setStyleSheet("background-color: white");
    2184       _cmbAntexFile->setStyleSheet("background-color: white");
    21852184      _cmbSamplSpinBox->setStyleSheet("background-color: white");
    21862185      _cmbMaxresLineEdit->setEnabled(true);
    2187       _cmbAntexFile->setEnabled(true);
    21882186      _cmbSamplSpinBox->setEnabled(true);
    21892187      _cmbUseGlonass->setEnabled(true);
     
    21922190      enableWidget(false, _cmbMethodComboBox);
    21932191      _cmbMaxresLineEdit->setStyleSheet("background-color: lightGray");
    2194       _cmbAntexFile->setStyleSheet("background-color: lightGray");
    21952192      _cmbSamplSpinBox->setStyleSheet("background-color: lightGray");
    21962193      _cmbMaxresLineEdit->setEnabled(false);
    2197       _cmbAntexFile->setEnabled(false);
    21982194      _cmbSamplSpinBox->setEnabled(false);
    21992195      _cmbUseGlonass->setEnabled(false);
     
    22092205    enableWidget(true, _uploadSamplClkRnxSpinBox);
    22102206    enableWidget(true, _uploadSamplSp3SpinBox);
     2207    enableWidget(true, _uploadAntexFile);
    22112208  }
    22122209  else {
     
    22152212    enableWidget(false, _uploadSamplClkRnxSpinBox);
    22162213    enableWidget(false, _uploadSamplSp3SpinBox);
     2214    enableWidget(false, _uploadAntexFile);
    22172215  }
    22182216
     
    22772275    enableWidget(false, _cmbMethodComboBox);
    22782276    _cmbMaxresLineEdit->setStyleSheet("background-color: lightGray");
    2279     _cmbAntexFile->setStyleSheet("background-color: lightGray");
    22802277    _cmbSamplSpinBox->setStyleSheet("background-color: lightGray");
    22812278    _cmbMaxresLineEdit->setEnabled(false);
    2282     _cmbAntexFile->setEnabled(false);
    22832279    _cmbSamplSpinBox->setEnabled(false);
    22842280    _cmbUseGlonass->setEnabled(false);
     
    23742370    enableWidget(false, _uploadSamplSp3SpinBox);
    23752371    enableWidget(false, _uploadSamplClkRnxSpinBox);
     2372    enableWidget(false, _uploadAntexFile);
    23762373  }
    23772374}
Note: See TracChangeset for help on using the changeset viewer.