Index: /trunk/FACT++/src/EventBuilderWrapper.h
===================================================================
--- /trunk/FACT++/src/EventBuilderWrapper.h	(revision 11198)
+++ /trunk/FACT++/src/EventBuilderWrapper.h	(revision 11199)
@@ -23,4 +23,9 @@
     extern int CloseRunFile(uint32_t runId, uint32_t closeTime);
 }
+
+namespace ba = boost::asio;
+namespace bs = boost::system;
+
+using ba::ip::tcp;
 
 class DataFileImp
@@ -718,5 +723,5 @@
     DimDescribedService fDimRuns;
     DimDescribedService fDimEvents;
-    DimDescribedService fDimCurrentEvent;
+//    DimDescribedService fDimCurrentEvent;
     DimDescribedService fDimEventData;
     DimDescribedService fDimFwVersion;
@@ -739,5 +744,5 @@
         fDimRuns        ("FAD_CONTROL/RUNS",             "I:1", ""),
         fDimEvents      ("FAD_CONTROL/EVENTS",           "I:2", ""),
-        fDimCurrentEvent("FAD_CONTROL/CURRENT_EVENT",    "I:1", ""),
+//        fDimCurrentEvent("FAD_CONTROL/CURRENT_EVENT",    "I:1", ""),
 	fDimEventData   ("FAD_CONTROL/EVENT_DATA",       "S:1;I:1;S:1;I:2;S:1;S", ""),
         fDimFwVersion   ("FAD_CONTROL/FIRMWARE_VERSION", "F:43", ""),
@@ -755,5 +760,5 @@
 
         fDimRuns.Update(uint32_t(0));
-        fDimCurrentEvent.Update(uint32_t(0));
+//        fDimCurrentEvent.Update(uint32_t(0));
         fDimEvents.Update(fNumEvts);
 
@@ -876,5 +881,6 @@
 
     bool IsConnected(int i) const     { return gi_NumConnect[i]==7; }
-    bool IsDisconnected(int i) const  { return gi_NumConnect[i]<=0; }
+    bool IsConnecting(int i) const    { return !IsConnected(i) && !IsDisconnected(i); }
+    bool IsDisconnected(int i) const  { return gi_NumConnect[i]<=0 && g_port[i].sockDef==0; }
     int  GetNumConnected(int i) const { return gi_NumConnect[i]; }
 
@@ -971,5 +977,5 @@
             fDimRuns.Update(fMaxRun);
             fDimEvents.Update(fNumEvts);
-            fDimCurrentEvent.Update(uint32_t(0));
+//            fDimCurrentEvent.Update(uint32_t(0));
         }
 
@@ -988,10 +994,17 @@
         if (file->GetRunId()==fMaxRun)
         {
-            fDimCurrentEvent.Update(e->EventNum);
+            //fDimCurrentEvent.Update(e->EventNum);
             fNumEvts[kCurrent]++;
         }
 
         fNumEvts[kTotal]++;
-        fDimEvents.Update(fNumEvts);
+
+        static Time oldt;
+        Time newt;
+        if (newt>oldt+boost::posix_time::seconds(1))
+        {
+            fDimEvents.Update(fNumEvts);
+            oldt = newt;
+        }
 
         // ===> SignalEvtWritten(runid);
@@ -1135,5 +1148,5 @@
 
 	} __attribute__((__packed__));;
-
+/*
         template<typename T>
         vector<T> CheckVals(const PEVNT_HEADER *fadhd, const T *val, bool &rc)
@@ -1158,5 +1171,5 @@
             return vec;
         }
-       /*
+
         template<typename T>
         vector<uint8_t> CheckBits(const PEVNT_HEADER *fadhd, const T &val, T &rc)
@@ -1185,4 +1198,7 @@
     int eventCheck(PEVNT_HEADER *fadhd, EVENT *event)
     {
+
+        return 0;
+
         /*
          fadhd[i] ist ein array mit den 40 fad-headers
@@ -1466,5 +1482,5 @@
 	vector<uint> con(gi_NumConnect, gi_NumConnect+40);
 
-	bool changed = con!=fNumConnected;
+	bool changed = con!=fNumConnected || !IsThreadRunning();
 
         fNumConnected = con;
@@ -1566,6 +1582,7 @@
     void debugHead(int socket, void *buf)
     {
-        EventBuilderWrapper::This->debugHead(socket, FAD::EventHeader(vector<uint16_t>(reinterpret_cast<uint16_t*>(buf),
-                                                                                       reinterpret_cast<uint16_t*>(buf)+sizeof(FAD::EventHeader)/2)));
+        const uint16_t *ptr = reinterpret_cast<uint16_t*>(buf);
+
+        EventBuilderWrapper::This->debugHead(socket, FAD::EventHeader(ptr));
     }
 
@@ -1577,5 +1594,5 @@
     void debugRead(int isock, int ibyte, int32_t event, int32_t ftmevt, int32_t runno, int state, uint32_t tsec, uint32_t tusec)
     {
-        return EventBuilderWrapper::This->debugRead(isock, ibyte, event, ftmevt, runno, state, tsec, tusec);
+        EventBuilderWrapper::This->debugRead(isock, ibyte, event, ftmevt, runno, state, tsec, tusec);
     }
 
