Index: trunk/BNS/bns.cpp
===================================================================
--- trunk/BNS/bns.cpp	(revision 810)
+++ trunk/BNS/bns.cpp	(revision 811)
@@ -50,4 +50,9 @@
   // ---------------------------------
   _outSocket = 0;
+  _outFile   = 0;
+  QFile outFile(settings.value("outFile").toString());
+  if (outFile.open(QFile::WriteOnly | QFile::Truncate)) {
+    _outFile = new QTextStream(&outFile);
+  }
 }
 
@@ -105,9 +110,8 @@
   
   QSettings settings;
-  QString host = settings.value("outHost").toString();
-  int     port = settings.value("outPort").toInt();
 
   _outSocket = new QTcpSocket();
-  _outSocket->connectToHost(host, port);
+  _outSocket->connectToHost(settings.value("outHost").toString(),
+                            settings.value("outPort").toInt());
 
   QString mountpoint = settings.value("mountpoint").toString();
@@ -169,8 +173,4 @@
   _bnseph->start();
 
-  // Open the connection to NTRIP Caster
-  // -----------------------------------
-  openCaster();
-
   // Endless loop
   // ------------
@@ -178,4 +178,7 @@
     if (_clkSocket && _clkSocket->state() == QAbstractSocket::ConnectedState) {
       if ( _clkSocket->canReadLine()) {
+        if (_outSocket == 0) {
+          openCaster();
+        }
         readEpoch();
       }
@@ -249,9 +252,14 @@
   XYZ_to_RSW(xB.Rows(1,3), vv, dx, rsw);
 
-  cout.setf(ios::showpoint | ios::fixed);
-  cout << GPSweek << " " 
-       << setprecision(1) << GPSweeks << " " << ep->prn.toAscii().data()
-       << "   " << int(ep->IODC) << " " << int(ep->IODE) << "   "
-       << setw(8) << setprecision(3) << dClk << "   "
-       << setw(8) << setprecision(3) << rsw.t();
-}
+  QString line;
+  line.sprintf("%d %.1f %s   %d %d   %8.3f   %8.3f %8.3f %8.3f\n", 
+               GPSweek, GPSweeks, ep->prn.toAscii().data(),
+               int(ep->IODC), int(ep->IODE), dClk, rsw(1), rsw(2), rsw(3));
+ 
+  if (_outFile) {
+    *_outFile << line;
+  }
+  if (_outSocket) {
+    _outSocket->write(line.toAscii());
+  }
+}
Index: trunk/BNS/bns.h
===================================================================
--- trunk/BNS/bns.h	(revision 810)
+++ trunk/BNS/bns.h	(revision 811)
@@ -52,4 +52,5 @@
   QTcpSocket*               _clkSocket;
   QTcpSocket*               _outSocket;
+  QTextStream*              _outFile;
   t_bnseph*                 _bnseph;
   QMutex                    _mutex;
