Changeset 9783 in ntrip for trunk/BNC/src/bncwindow.cpp


Ignore:
Timestamp:
Jun 27, 2022, 5:09:40 PM (22 months ago)
Author:
stuerze
Message:

some changes regarding PPP

File:
1 edited

Legend:

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

    r9760 r9783  
    992992  pppLayout1->addWidget(new QLabel("Data source"),           ir, 0);
    993993  pppLayout1->addWidget(_pppWidgets._dataSource,             ir, 1);
    994   pppLayout1->addWidget(new QLabel("   Version 2 filenames"),ir, 4);
    995   pppLayout1->addWidget(_pppWidgets._v2filenames,            ir, 5, 1, 3);
     994  pppLayout1->addWidget(new QLabel("   Logfile directory"),  ir, 4);
     995  pppLayout1->addWidget(_pppWidgets._logPath,                ir, 5, 1, 3);
    996996  ++ir;
    997997  pppLayout1->addWidget(new QLabel("Corrections stream"),    ir, 0);
     
    999999  pppLayout1->addWidget(new QLabel("Corrections file"),      ir, 2);
    10001000  pppLayout1->addWidget(_pppWidgets._corrFile,               ir, 3);
    1001   pppLayout1->addWidget(new QLabel("   Logfile directory"),  ir, 4);
    1002   pppLayout1->addWidget(_pppWidgets._logPath,                ir, 5, 1, 3);
     1001  pppLayout1->addWidget(new QLabel("   NMEA directory"),     ir, 4);
     1002  pppLayout1->addWidget(_pppWidgets._nmeaPath,               ir, 5, 1, 3);
     1003  ++ir;
     1004#ifdef USE_PPP
     1005  pppLayout1->addWidget(new QLabel("Ionosphere stream"),     ir, 0);
     1006  pppLayout1->addWidget(_pppWidgets._ionoMount,              ir, 1);
     1007  pppLayout1->addWidget(new QLabel("Ionosphere file"),       ir, 2);
     1008  pppLayout1->addWidget(_pppWidgets._ionoFile,               ir, 3);
     1009#endif
     1010  pppLayout1->addWidget(new QLabel("   SNX TRO directory"),  ir, 4);
     1011  pppLayout1->addWidget(_pppWidgets._snxtroPath,             ir, 5, 1, 3);
    10031012  ++ir;
    10041013  pppLayout1->addWidget(new QLabel("RINEX Obs file"),        ir, 0);
     
    10061015  pppLayout1->addWidget(new QLabel("RINEX Nav file"),        ir, 2);
    10071016  pppLayout1->addWidget(_pppWidgets._rinexNav,               ir, 3);
    1008   pppLayout1->addWidget(new QLabel("   NMEA directory"),     ir, 4);
    1009   pppLayout1->addWidget(_pppWidgets._nmeaPath,               ir, 5, 1, 3);
     1017  pppLayout1->addWidget(new QLabel("   SNX TRO interval"),   ir, 4);
     1018  pppLayout1->addWidget(_pppWidgets._snxtroIntr,             ir, 5);
     1019  pppLayout1->addWidget(new QLabel("   SNX TRO sampling"),   ir, 6);
     1020  pppLayout1->addWidget(_pppWidgets._snxtroSampl,            ir, 7, Qt::AlignRight);
    10101021  ++ir;
    1011   pppLayout1->addWidget(new QLabel("Coordinates file"),      ir, 0);
    1012   pppLayout1->addWidget(_pppWidgets._crdFile,                ir, 1);
    1013   pppLayout1->addWidget(new QLabel("ANTEX file"),            ir, 2);
    1014   pppLayout1->addWidget(_pppWidgets._antexFile,              ir, 3);
    1015   pppLayout1->addWidget(new QLabel("   SNX TRO directory"),  ir, 4);
    1016   pppLayout1->addWidget(_pppWidgets._snxtroPath,             ir, 5, 1, 3);
     1022  pppLayout1->addWidget(new QLabel("ANTEX file"),            ir, 0);
     1023  pppLayout1->addWidget(_pppWidgets._antexFile,              ir, 1);
     1024  pppLayout1->addWidget(new QLabel("Coordinates file"),      ir, 2);
     1025  pppLayout1->addWidget(_pppWidgets._crdFile,                ir, 3);
     1026  pppLayout1->addWidget(new QLabel("   SNX TRO AC"),         ir, 4);
     1027  pppLayout1->addWidget(_pppWidgets._snxtroAc,               ir, 5);
     1028  pppLayout1->addWidget(new QLabel("   SNX TRO solution"),   ir, 6);
     1029  pppLayout1->addWidget(_pppWidgets._snxtroSol,              ir, 7, Qt::AlignRight);
    10171030  ++ir;
    10181031#ifdef USE_PPP
     
    10201033  pppLayout1->addWidget(_pppWidgets._blqFile,                ir, 1);
    10211034#endif
    1022   pppLayout1->addWidget(new QLabel("   SNX TRO interval"),   ir, 4);
    1023   pppLayout1->addWidget(_pppWidgets._snxtroIntr,             ir, 5);
    1024   pppLayout1->addWidget(new QLabel("   SNX TRO sampling"),   ir, 6);
    1025   pppLayout1->addWidget(_pppWidgets._snxtroSampl,            ir, 7, Qt::AlignRight);
    1026   ++ir;
    1027   pppLayout1->addWidget(new QLabel("Ionosphere stream"),     ir, 0);
    1028   pppLayout1->addWidget(_pppWidgets._ionoMount,              ir, 1);
    1029   pppLayout1->addWidget(new QLabel("Ionosphere file"),       ir, 2);
    1030   pppLayout1->addWidget(_pppWidgets._ionoFile,               ir, 3);
    1031   pppLayout1->addWidget(new QLabel("   SNX TRO AC"),         ir, 4);
    1032   pppLayout1->addWidget(_pppWidgets._snxtroAc,               ir, 5);
    1033   pppLayout1->addWidget(new QLabel("   SNX TRO solution"),   ir, 6);
    1034   pppLayout1->addWidget(_pppWidgets._snxtroSol,              ir, 7, Qt::AlignRight);
    10351035  pppLayout1->setRowStretch(ir+1, 999);
    10361036  pppGroup1->setLayout(pppLayout1);
     
    10801080  pppLayout3->addWidget(_pppWidgets._minObs,                ir, 4);
    10811081  pppLayout3->addWidget(new QLabel("Min Elevation"),        ir, 6, Qt::AlignLeft);
    1082   pppLayout3->addWidget(_pppWidgets._minEle,                ir, 7);
     1082  pppLayout3->addWidget(_pppWidgets._minEle,                ir, 7);_pppWidgets._minEle->setMaximumWidth(8*ww);
    10831083  ++ir;
    10841084  pppLayout3->addWidget(new QLabel("Model Obs"),            ir, 0, Qt::AlignLeft);
     
    10871087  pppLayout3->addWidget(_pppWidgets._corrWaitTime,          ir, 4);
    10881088  pppLayout3->addWidget(new QLabel("Seeding (sec)"),        ir, 6, Qt::AlignLeft);
    1089   pppLayout3->addWidget(_pppWidgets._seedingTime,           ir, 7);
     1089  pppLayout3->addWidget(_pppWidgets._seedingTime,           ir, 7);_pppWidgets._seedingTime->setMaximumWidth(8*ww);
    10901090  ++ir;
    10911091  pppLayout3->addWidget(new QLabel("Pseudo Obs"),           ir, 0, Qt::AlignLeft);
     
    14641464  // WhatsThis, PPP (1)
    14651465  // ------------------
    1466   _pppWidgets._dataSource->setWhatsThis(tr("<p>Select 'Real-time Streams' for real-time PPP from RTCM streams or 'RINEX Files' for post processing PPP from RINEX files.</p><p><ul><li>Real-time PPP requires that you pull a RTCM stream carrying GNSS observations plus a stream providing corrections to Broadcast Ephemeris. If the observations stream does not contain Broadcast Ephemeris then you must in addition pull a Broadcast Ephemeris stream like 'RTCM3EPH' from Ntrip Broadcaster <u>products.igs-ip.net</u>.<br></li><li>Post processing PPP requires RINEX Observation files, RINEX Navigation files and a file with corrections to Broadcast Ephemeris in plain ASCII format as saved beforehand using BNC.</li></ul></p><p>Note that BNC allows to carry out PPP solutions simultaneously for several stations.</p>"));
    1467   _pppWidgets._rinexObs->setWhatsThis(tr("<p>Specify the RINEX Observation file.</p>"));
    1468   _pppWidgets._rinexNav->setWhatsThis(tr("<p>Specify the RINEX Navigation file.</p>"));
    1469   _pppWidgets._corrMount->setWhatsThis(tr("<p>Specify a 'mountpoint' from the 'Streams' canvas below which provides corrections to Broadcast Ephemeris.</p><p>If you don't specify a corrections stream via this option, BNC will fall back to Single Point Positioning (SPP, positioning from observations and Broadcast Ephemeris only) instead of doing PPP.</p>"));
    1470   _pppWidgets._corrFile->setWhatsThis(tr("<p>Specify the Broadcast Ephemeris Corrections file as saved beforehand using BNC.</p><p>If you don't specify corrections by this option, BNC will fall back to Single Point Positioning (SPP, positioning from RINEX Obs and RINEX Nav files only) instead of doing PPP.</p>"));
    1471   _pppWidgets._antexFile->setWhatsThis(tr("<p>Observations in RTCM streams or RINEX files should be referred to the receiver's and to the satellite's Antenna Phase Center (APC) and therefore be corrected for<ul><li>Receiver APC offsets</li><li>Receiver APC variations</li><li>Satellite APC offsets.</li></ul> Specify the full path to an IGS 'ANTEX file' which contains APC offsets and variations.</p><p>If you don't specify an 'ANTEX file' then observations will not be corrected for APC offsets and variations.</p>"));
    1472   _pppWidgets._crdFile->setWhatsThis(tr("<p>Enter the full path to an ASCII file which specifies the streams or files of those stations you want to process. Specifying a 'Coordinates file' is optional. If it exists, it should contain one record per station with the following parameters separated by blank character:<p><ul><li>Specify the station either by<ul><li>the 'Mountpoint' of the station's RTCM stream (when in real-time PPP mode), or</li><li>the 4-charater station ID of the RINEX Observations file (when in post processing PPP mode).</li></ul></li><li>Approximate X,Y,Z coordinate of station's Antenna Reference Point [m] (ARP, specify '0.0 0.0 0.0' if unknown).</li><li>North, East and Up component of antenna eccentricity [m] (specify '0.0 0.0 0.0' if unknown).</li><li>20 Characters describing the antenna type and radome following the IGS 'ANTEX file' standard (leave blank if unknown).</li><li>Receiver type following the naming conventions for IGS equipment.</li></ul></p><p>Records with exclamation mark '!' in the first column or blank records will be interpreted as comment lines and ignored.</p>"));
    1473   _pppWidgets._v2filenames->setWhatsThis(tr("<p>Tick 'Version 2 filenames' to let BNC create filenames for PPP logfiles , NMEA files and SINEX Troposphere files following the RINEX Version 2 standard.</p><p>Default is an empty check box, meaning to create filenames following the RINEX Version 3 standard. The file content is not affected by this option. It only concerns the filenames.</p>"));
    1474   _pppWidgets._logPath->setWhatsThis(tr("<p>Specify a directory for saving daily PPP logfiles. If the specified directory does not exist, BNC will not create such files.</p><p>Default is an empty option field, meaning that no PPP logfiles shall be produced.</p>"));
    1475   _pppWidgets._nmeaPath->setWhatsThis(tr("<p>Specify a directory for saving coordinates in daily NMEA files. If the specified directory does not exist, BNC will not create such files.</p><p>Default is an empty option field, meaning that no NMEA file shall be produced.</p>"));
    1476   _pppWidgets._snxtroPath->setWhatsThis(tr("<p>Specify a directory for saving SINEX Troposphere files. If the specified directory does not exist, BNC will not create such files.</p><p>Default is an empty option field, meaning that no SINEX Troposphere files shall be produced.</p>"));
    1477   _pppWidgets._snxtroIntr->setWhatsThis(tr("<p>Select a length for SINEX Troposphere files.</p><p>Default 'SNX TRO interval' for saving SINEX Troposphere files on disk is '1 hour'.</p>"));
    1478   _pppWidgets._snxtroSampl->setWhatsThis(tr("<p>Select a 'Sampling' rate for saving troposphere parameters.</p>"));
    1479   _pppWidgets._snxtroAc->setWhatsThis(tr("<p>Specify a 3-character abbreviation describing you as the generating Analysis Center (AC) in your SINEX troposphere files.</p>"));
    1480   _pppWidgets._snxtroSol->setWhatsThis(tr("<p>Specify a 4-character solution ID to allow a distingtion between different solutions per AC.</p>"));
    1481   _pppWidgets._ionoMount->setWhatsThis(tr("<p>Specify a 'mountpoint' from the 'Streams' canvas below which provides VTEC informations in SSR format.</p><p>If you don't specify a corrections stream via this option, BNC will use VTEC informations from the Corrections stream 'mountpoint', if available.</p>"));
     1466  _pppWidgets._dataSource->setWhatsThis(tr("<p>Select 'Real-time Streams' for real-time PPP from RTCM streams or 'RINEX Files' for post processing PPP from RINEX files.</p><p><ul><li>Real-time PPP requires that you pull a RTCM stream carrying GNSS observations plus a stream providing corrections to Broadcast Ephemeris. If the observations stream does not contain Broadcast Ephemeris then you must in addition pull a Broadcast Ephemeris stream like 'RTCM3EPH' from Ntrip Broadcaster <u>products.igs-ip.net</u>.<br></li><li>Post processing PPP requires RINEX Observation files, RINEX Navigation files and a file with corrections to Broadcast Ephemeris in plain ASCII format as saved beforehand using BNC.</li></ul></p><p>Note that BNC allows to carry out PPP solutions simultaneously for several stations. <i>[key: PPP/]</i></p>"));
     1467  _pppWidgets._rinexObs->setWhatsThis(tr("<p>Specify the RINEX Observation file. <i>[key: PPP/rinexObs]</i></p>"));
     1468  _pppWidgets._rinexNav->setWhatsThis(tr("<p>Specify the RINEX Navigation file. <i>[key: PPP/rinexNav]</i></p>"));
     1469  _pppWidgets._corrMount->setWhatsThis(tr("<p>Specify a 'mountpoint' from the 'Streams' canvas below which provides corrections to Broadcast Ephemeris.</p><p>If you don't specify a corrections stream via this option, BNC will fall back to Single Point Positioning (SPP, positioning from observations and Broadcast Ephemeris only) instead of doing PPP. <i>[key: PPP/corrMount]</i></p>"));
     1470  _pppWidgets._ionoMount->setWhatsThis(tr("<p>Specify a 'mountpoint' from the 'Streams' canvas below which provides VTEC informations in SSR format.</p><p>If you don't specify a corrections stream via this option, BNC will use VTEC informations from the Corrections stream 'mountpoint', if available. <i>[key: PPP/ionoMount]</i></p>"));
     1471  _pppWidgets._corrFile->setWhatsThis(tr("<p>Specify the Broadcast Ephemeris Corrections file as saved beforehand using BNC.</p><p>If you don't specify corrections by this option, BNC will fall back to Single Point Positioning (SPP, positioning from RINEX Obs and RINEX Nav files only) instead of doing PPP. <i>[key: PPP/corrFile]</i></p>"));
     1472  _pppWidgets._ionoFile->setWhatsThis(tr("<p>Specify the VTEC file as saved beforehand using BNC.</p><p>If you don't specify corrections by this option, BNC will use VTEC informations from the Corrections file, if available. <i>[key: PPP/ionoFile]</i></p>"));
     1473  _pppWidgets._antexFile->setWhatsThis(tr("<p>Observations in RTCM streams or RINEX files should be referred to the receiver's and to the satellite's Antenna Phase Center (APC) and therefore be corrected for<ul><li>Receiver APC offsets</li><li>Receiver APC variations</li><li>Satellite APC offsets.</li></ul> Specify the full path to an IGS 'ANTEX file' which contains APC offsets and variations.</p><p>If you don't specify an 'ANTEX file' then observations will not be corrected for APC offsets and variations. <i>[key: PPP/antexFile]</i></p>"));
     1474  _pppWidgets._crdFile->setWhatsThis(tr("<p>Enter the full path to an ASCII file which specifies the streams or files of those stations you want to process. Specifying a 'Coordinates file' is optional. If it exists, it should contain one record per station with the following parameters separated by blank character:<p><ul><li>Specify the station either by<ul><li>the 'Mountpoint' of the station's RTCM stream (when in real-time PPP mode), or</li><li>the 4-charater station ID of the RINEX Observations file (when in post processing PPP mode).</li></ul></li><li>Approximate X,Y,Z coordinate of station's Antenna Reference Point [m] (ARP, specify '0.0 0.0 0.0' if unknown).</li><li>North, East and Up component of antenna eccentricity [m] (specify '0.0 0.0 0.0' if unknown).</li><li>20 Characters describing the antenna type and radome following the IGS 'ANTEX file' standard (leave blank if unknown).</li><li>Receiver type following the naming conventions for IGS equipment.</li></ul></p><p>Records with exclamation mark '!' in the first column or blank records will be interpreted as comment lines and ignored. <i>[key: PPP/crdFile]</i></p>"));
     1475  _pppWidgets._logPath->setWhatsThis(tr("<p>Specify a directory for saving daily PPP logfiles. If the specified directory does not exist, BNC will not create such files.</p><p>Default is an empty option field, meaning that no PPP logficorrMountles shall be produced. <i>[key: PPP/logPath]</i></p>"));
     1476  _pppWidgets._nmeaPath->setWhatsThis(tr("<p>Specify a directory for saving coordinates in daily NMEA files. If the specified directory does not exist, BNC will not create such files.</p><p>Default is an empty option field, meaning that no NMEA file shall be produced. <i>[key: PPP/nmeaPath]</i></p>"));
     1477  _pppWidgets._snxtroPath->setWhatsThis(tr("<p>Specify a directory for saving SINEX Troposphere files. If the specified directory does not exist, BNC will not create such files.</p><p>Default is an empty option field, meaning that no SINEX Troposphere files shall be produced. <i>[key: PPP/snxtroPath]</i></p>"));
     1478  _pppWidgets._snxtroIntr->setWhatsThis(tr("<p>Select a length for SINEX Troposphere files.</p><p>Default 'SNX TRO interval' for saving SINEX Troposphere files on disk is '1 hour'. <i>[key: PPP/snxtroIntr]</i></p>"));
     1479  _pppWidgets._snxtroSampl->setWhatsThis(tr("<p>Select a 'Sampling' rate for saving troposphere parameters. <i>[key: PPP/snxtroSampl]</i></p>"));
     1480  _pppWidgets._snxtroAc->setWhatsThis(tr("<p>Specify a 3-character abbreviation describing you as the generating Analysis Center (AC) in your SINEX troposphere files. <i>[key: PPP/snxtroAc]</i></p>"));
     1481  _pppWidgets._snxtroSol->setWhatsThis(tr("<p>Specify a 4-character solution ID to allow a distinction between different solutions per AC. <i>[key: PPP/snxtroSol]</i></p>"));
     1482
    14821483
    14831484  // WhatsThis, PPP (3)
Note: See TracChangeset for help on using the changeset viewer.