Index: trunk/BNC/src/PPP/pppMain.cpp
===================================================================
--- trunk/BNC/src/PPP/pppMain.cpp	(revision 5714)
+++ trunk/BNC/src/PPP/pppMain.cpp	(revision 5714)
@@ -0,0 +1,122 @@
+
+// Part of BNC, a utility for retrieving decoding and
+// converting GNSS data streams from NTRIP broadcasters.
+//
+// Copyright (C) 2007
+// German Federal Agency for Cartography and Geodesy (BKG)
+// http://www.bkg.bund.de
+// Czech Technical University Prague, Department of Geodesy
+// http://www.fsv.cvut.cz
+//
+// Email: euref-ip@bkg.bund.de
+//
+// This program is free software; you can redistribute it and/or
+// modify it under the terms of the GNU General Public License
+// as published by the Free Software Foundation, version 2.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with this program; if not, write to the Free Software
+// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+
+/* -------------------------------------------------------------------------
+ * BKG NTRIP Client
+ * -------------------------------------------------------------------------
+ *
+ * Class:      t_pppMain
+ *
+ * Purpose:    Start of the PPP client(s)
+ *
+ * Author:     L. Mervart
+ *
+ * Created:    29-Jul-2014
+ *
+ * Changes:    
+ *
+ * -----------------------------------------------------------------------*/
+
+#include "pppMain.h"
+#include "bncsettings.h"
+
+using namespace BNC;
+using namespace std;
+
+// Constructor
+//////////////////////////////////////////////////////////////////////////////
+t_pppMain::t_pppMain() {
+  readOptions();
+}
+
+// Destructor
+//////////////////////////////////////////////////////////////////////////////
+t_pppMain::~t_pppMain() {
+}
+
+// 
+//////////////////////////////////////////////////////////////////////////////
+void t_pppMain::readOptions() {
+
+  _options.clear();
+
+  bncSettings settings;
+
+  _logFile  = settings.value("PPP/logFile").toString();
+  _nmeaFile = settings.value("PPP/nmeaFile").toString();
+  _nmeaPort = settings.value("PPP/nmeaPort").toInt();
+
+  bool realTime = false;
+  if      (settings.value("PPP/dataSource").toString() == "Real-Time Streams") {
+    realTime = true;
+  }
+  else if (settings.value("PPP/dataSource").toString() == "RINEX Files") {
+    realTime = false;
+  }
+  else {
+    return;    
+  }
+
+  QListIterator<QString> it(settings.value("PPP/staTable").toStringList());
+  while (it.hasNext()) {
+    QStringList hlp = it.next().split(",");
+
+    if (hlp.size() < 9) {
+      throw "pppMain: wrong option staTable";
+    }
+
+    QSharedPointer<t_options> opt(new t_options());
+
+    opt->_realTime    = realTime;
+    opt->_roverName   = hlp[0].toAscii().data();
+    opt->_sigCrd[0]   = hlp[1].toDouble();
+    opt->_sigCrd[1]   = hlp[2].toDouble();
+    opt->_sigCrd[2]   = hlp[3].toDouble();
+    opt->_noiseCrd[0] = hlp[4].toDouble();
+    opt->_noiseCrd[1] = hlp[5].toDouble();
+    opt->_noiseCrd[2] = hlp[6].toDouble();
+    opt->_sigTropo    = hlp[7].toDouble();
+    opt->_noiseTropo  = hlp[8].toDouble();
+
+    if (realTime) {
+      opt->_corrMount = settings.value("PPP/corrMount").toString().toAscii().data();
+    }
+    else {
+      opt->_rinexObs = settings.value("PPP/rinexObs").toString().toAscii().data();
+      opt->_rinexNav = settings.value("PPP/rinexNav").toString().toAscii().data();
+      opt->_corrFile = settings.value("PPP/corrFile").toString().toAscii().data();
+    }
+
+    opt->_crdFile   = settings.value("PPP/crdFile").toString().toAscii().data();
+    opt->_antexFile = settings.value("PPP/antexFile").toString().toAscii().data();
+
+    opt->_sigmaC1      = settings.value("PPP/sigmaC1").toDouble();
+    opt->_sigmaL1      = settings.value("PPP/sigmaL1").toDouble();
+    opt->_corrWaitTime = settings.value("PPP/corrWaitTime").toDouble();
+
+    _options << opt;
+  }
+}
+
Index: trunk/BNC/src/PPP/pppMain.h
===================================================================
--- trunk/BNC/src/PPP/pppMain.h	(revision 5714)
+++ trunk/BNC/src/PPP/pppMain.h	(revision 5714)
@@ -0,0 +1,25 @@
+#ifndef PPPMAIN_H
+#define PPPMAIN_H
+
+#include <QtCore>
+#include "options.h"
+
+namespace BNC {
+
+class t_pppMain {
+ public:
+  t_pppMain();                                                      
+  ~t_pppMain();                                                     
+
+ private:
+  void readOptions();
+
+  QList<QSharedPointer<t_options> > _options;
+  QString                           _logFile;
+  QString                           _nmeaFile;
+  int                               _nmeaPort;
+};
+
+}; // namespace BNC
+
+#endif
