Index: trunk/BNS/bns.cpp
===================================================================
--- trunk/BNS/bns.cpp	(revision 1061)
+++ trunk/BNS/bns.cpp	(revision 1062)
@@ -74,4 +74,8 @@
   // -------------------------------------------
   _caster = new t_bnscaster(settings.value("mountpoint").toString());
+  connect(_clkServer, SIGNAL(error(const QByteArray)),
+          this, SLOT(slotError(const QByteArray)));
+  connect(_clkServer, SIGNAL(newMessage(const QByteArray)),
+          this, SLOT(slotNewMessage(const QByteArray)));
 
   QIODevice::OpenMode oMode;
Index: trunk/BNS/bns.h
===================================================================
--- trunk/BNS/bns.h	(revision 1061)
+++ trunk/BNS/bns.h	(revision 1062)
@@ -8,4 +8,5 @@
 
 #include "bnseph.h"
+#include "bnscaster.h"
 extern "C" {
 #include "RTCM/clock_orbit_rtcm.h"
@@ -65,7 +66,5 @@
   QTcpServer*               _clkServer;
   QTcpSocket*               _clkSocket;
-  QTcpSocket*               _outSocket;
-  int                       _outSocketOpenTrial;
-  QDateTime                 _outSocketOpenTime;
+  t_bnscaster*              _caster;
   QFile*                    _outFile;
   QFile*                    _logFile;
Index: trunk/BNS/bns.pro
===================================================================
--- trunk/BNS/bns.pro	(revision 1061)
+++ trunk/BNS/bns.pro	(revision 1062)
@@ -24,5 +24,5 @@
 HEADERS =             bns.h   bnswindow.h   bnshlpdlg.h   bnshtml.h   \
           bnseph.h    bnsutils.h bnsrinex.h bnssp3.h bnsoutf.h        \
-          RTCM/clock_orbit_rtcm.h
+          bnscaster.h RTCM/clock_orbit_rtcm.h
 
 HEADERS += newmat/controlw.h newmat/include.h newmat/myexcept.h  \
@@ -32,5 +32,5 @@
 SOURCES = bnsmain.cpp bns.cpp bnswindow.cpp bnshlpdlg.cpp bnshtml.cpp  \
           bnseph.cpp  bnsutils.cpp bnsrinex.cpp bnssp3.cpp bnsoutf.cpp \
-          RTCM/clock_orbit_rtcm.c
+          bnscaster.cpp RTCM/clock_orbit_rtcm.c
 
 SOURCES += newmat/bandmat.cpp newmat/cholesky.cpp newmat/evalue.cpp  \
Index: trunk/BNS/bnscaster.h
===================================================================
--- trunk/BNS/bnscaster.h	(revision 1061)
+++ trunk/BNS/bnscaster.h	(revision 1062)
@@ -4,11 +4,12 @@
 #include <QtNetwork>
 
-class t_bnscaster {
+class t_bnscaster : public QObject {
  Q_OBJECT
  public:
   t_bnscaster(const QString& mountpoint);
-  ~t_bnscaster();
+  virtual ~t_bnscaster();
   void open();
   void write(char* buffer, unsigned len);
+  bool used() {return _outSocket;}
 
  signals:
