Index: trunk/MagicSoft/Mars/mreport/MReport.cc
===================================================================
--- trunk/MagicSoft/Mars/mreport/MReport.cc	(revision 2604)
+++ trunk/MagicSoft/Mars/mreport/MReport.cc	(revision 2632)
@@ -60,11 +60,10 @@
     int n = sscanf(str.Data(),
                    fHasReportTime ?
-                   " %d %d %d %d %d %d %d %d "
-                   "%*d %*d %*d %*d %*d %*d %*d %*d %n" :
-                   " %d %*d %*d %*d %d %d %d %d ",
+                   " %d %d %d %d %d %d %d %d %*d %*d %*d %*d %*d %*d %*d %*d %n" :
+                   " %d %d %d %d %d %d %d %d %n",
                    &state, &yea, &mon, &day, &hor, &min, &sec, &ms, &len);
     if (n!=8)
     {
-        *fLog << err << "ERROR - Cannot interprete Body of " << fIdentifier << endl;
+        *fLog << err << "ERROR - Cannot interprete Body of " << fIdentifier << " (n=" << n << ")" << endl;
         return kFALSE;
     }
@@ -81,4 +80,5 @@
 
     str.Remove(0, len);
+
     return kTRUE;
 }
Index: trunk/MagicSoft/Mars/mreport/MReportCurrents.cc
===================================================================
--- trunk/MagicSoft/Mars/mreport/MReportCurrents.cc	(revision 2604)
+++ trunk/MagicSoft/Mars/mreport/MReportCurrents.cc	(revision 2632)
@@ -36,5 +36,6 @@
 #include "MLogManip.h"
 
-#include "MAstro.h"
+#include "MParList.h"
+#include "MCameraDC.h"
 
 ClassImp(MReportCurrents);
@@ -42,9 +43,19 @@
 using namespace std;
 
-MReportCurrents::MReportCurrents() : MReport("DC-REPORT"), fCurrents(577)
+MReportCurrents::MReportCurrents() : MReport("DC-REPORT", kFALSE)
 {
     fName  = "MReportCurrents";
     fTitle = "Class for DC-REPORT information";
 }
+
+Bool_t MReportCurrents::SetupReading(MParList &plist)
+{
+    fDC = (MCameraDC*)plist.FindCreateObj("MCameraDC");
+    if (!fDC)
+        return kFALSE;
+
+    return MReport::SetupReading(plist);
+}
+
 
 // Currents-REPORT 02 2003 11 04 23 53 34 951 00 0000 00 00 23 53 32 466
@@ -54,9 +65,8 @@
     Int_t len;
     Short_t err1, err2;
-    const Int_t n=sscanf(str.Data(), " %hd %hd %n",
-                         &err1, &err2, &len);
+    const Int_t n=sscanf(str.Data(), " %hd %hd %n", &err1, &err2, &len);
     if (n!=2)
     {
-        *fLog << err << "ERROR - Reading information of 'LV' section." << endl;
+        *fLog << err << "ERROR - Reading status information." << endl;
         return kFALSE;
     }
@@ -82,5 +92,5 @@
         }
 
-        fCurrents[i++] = 0.001*c;
+        (*fDC)[i++] = 0.001*c;
     }
 
@@ -88,4 +98,4 @@
     str=str.Strip(TString::kLeading);
 
-    return kTRUE;
+    return str.IsNull();
 }
Index: trunk/MagicSoft/Mars/mreport/MReportCurrents.h
===================================================================
--- trunk/MagicSoft/Mars/mreport/MReportCurrents.h	(revision 2604)
+++ trunk/MagicSoft/Mars/mreport/MReportCurrents.h	(revision 2632)
@@ -6,7 +6,5 @@
 #endif
 
-#ifndef ROOT_TArrayF
-#include <TArrayF.h>
-#endif
+class MCameraDC;
 
 class MReportCurrents : public MReport
@@ -16,12 +14,13 @@
     Byte_t fStatus2;
 
-    TArrayF fCurrents;
+    MCameraDC *fDC; //!
+
+    Bool_t SetupReading(MParList &plist);
+    Bool_t InterpreteBody(TString &str);
 
 public:
     MReportCurrents();
 
-    Bool_t InterpreteBody(TString &str);
-
-    ClassDef(MReportCurrents, 0) // Class for DC-REPORT information
+    ClassDef(MReportCurrents, 1) // Class for DC-REPORT information
 };
 
Index: trunk/MagicSoft/Mars/mreport/MReportFileRead.cc
===================================================================
--- trunk/MagicSoft/Mars/mreport/MReportFileRead.cc	(revision 2604)
+++ trunk/MagicSoft/Mars/mreport/MReportFileRead.cc	(revision 2632)
@@ -270,4 +270,6 @@
         return kFALSE;
     }
+    if (TestBit(kHasNoHeader))
+        return kTRUE;
 
     return CheckFileHeader();
@@ -287,5 +289,7 @@
     while (!GetReport(rep))
     {
-        str.ReadLine(*fIn);
+        // Don't know the reason, but ReadLine and ReadString don't work
+        // for the (at least: converted) DC files.
+        str.ReadToDelim(*fIn);
         if (!*fIn)
         {
Index: trunk/MagicSoft/Mars/mreport/MReportFileRead.h
===================================================================
--- trunk/MagicSoft/Mars/mreport/MReportFileRead.h	(revision 2604)
+++ trunk/MagicSoft/Mars/mreport/MReportFileRead.h	(revision 2632)
@@ -27,4 +27,6 @@
     THashTable *fList;
 
+    enum { kHasNoHeader = BIT(14) };
+
     Int_t PreProcess(MParList *pList);
     Int_t Process();
@@ -40,4 +42,6 @@
     ~MReportFileRead();
 
+    void SetHasNoHeader() { SetBit(kHasNoHeader); }
+
     Bool_t AddToList(const char *name) const;
 
Index: trunk/MagicSoft/Mars/mreport/Makefile
===================================================================
--- trunk/MagicSoft/Mars/mreport/Makefile	(revision 2604)
+++ trunk/MagicSoft/Mars/mreport/Makefile	(revision 2632)
@@ -22,5 +22,6 @@
 #  connect the include files defined in the config.mk file
 #
-INCLUDES = -I. -I../mbase -I../mtools -I../mcamera
+INCLUDES = -I. -I../mbase -I../mtools -I../mcamera -I../mgui
+# mgui - MCameraDC <MCamEvent>
 
 #------------------------------------------------------------------------------
