Index: /trunk/MagicSoft/Mars/mjobs/MJCalibrateSignal.cc
===================================================================
--- /trunk/MagicSoft/Mars/mjobs/MJCalibrateSignal.cc	(revision 5160)
+++ /trunk/MagicSoft/Mars/mjobs/MJCalibrateSignal.cc	(revision 5161)
@@ -69,4 +69,5 @@
 #include "MReadReports.h"
 #include "MReadMarsFile.h"
+#include "MRawFileRead.h"
 #include "MGeomApply.h"
 #include "MMcPedestalCopy.h"
@@ -171,5 +172,5 @@
 }
 
-Bool_t MJCalibrateSignal::ProcessFile(MPedestalCam &pedcam, Bool_t ismc)
+Bool_t MJCalibrateSignal::ProcessFile(MPedestalCam &pedcam)
 {
     if (!fSequence.IsValid())
@@ -274,4 +275,18 @@
     plist.AddToList(&tlist);
 
+    // FIXME: Move this to an intermediate class MJMagic
+    TString name = iter.Next();
+    Byte_t filetype = MRawFileRead::IsFileValid(name);
+    if (!filetype)
+        filetype = MReadMarsFile::IsFileValid(name)+1;
+    if (filetype==1||filetype>3)
+    {
+        gLog << err << "ERROR - FileType of first file " << name << " unknown..." << endl;
+        return kFALSE;
+    }
+    // 1 = raw-file
+    // 2 = raw-root file
+    // 3 = mc-raw file
+
     MReadReports readreal;
     readreal.AddTree("Events", "MTime.", kTRUE);
@@ -286,4 +301,7 @@
     readmc.DisableAutoScheme();
     readmc.AddFiles(iter);
+
+    MRawFileRead readraw(NULL);
+    readraw.AddFiles(iter);
 
     MGeomApply             apply; // Only necessary to create geometry
@@ -298,5 +316,5 @@
     taskenv2.SetDefault(extractor2);
     MCalibrateData         calib;
-    if (ismc)
+    if (filetype==3)
         calib.SetCalibrationMode(MCalibrateData::kFfactor);
     MCalibrateRelTimes     caltm;
@@ -370,5 +388,5 @@
     tlist2.AddToList(&apply);
     tlist2.AddToList(&merge);
-    tlist2.AddToList(ismc ? (MTask*)&pcopy : (MTask*)&pedlo);
+    tlist2.AddToList(filetype==3 ? (MTask*)&pcopy : (MTask*)&pedlo);
     tlist2.AddToList(&fill0);
     if (extractor1)
@@ -391,5 +409,11 @@
 
     // Now setup main tasklist
-    tlist.AddToList(ismc ? (MTask*)&readmc : (MTask*)&readreal);
+    switch (filetype)
+    {
+    case 1: tlist.AddToList(&readraw);  break;
+    case 2: tlist.AddToList(&readreal); break;
+    case 3: tlist.AddToList(&readmc);   break;
+    }
+
     tlist.AddToList(&tlist2, "Events");
     tlist.AddToList(&pcalc,  "Drive");
Index: /trunk/MagicSoft/Mars/mjobs/MJCalibrateSignal.h
===================================================================
--- /trunk/MagicSoft/Mars/mjobs/MJCalibrateSignal.h	(revision 5160)
+++ /trunk/MagicSoft/Mars/mjobs/MJCalibrateSignal.h	(revision 5161)
@@ -26,5 +26,5 @@
     MJCalibrateSignal(const char *name=NULL, const char *title=NULL);
 
-    Bool_t ProcessFile(MPedestalCam &cam, Bool_t ismc=kFALSE);
+    Bool_t ProcessFile(MPedestalCam &cam);
 
     ClassDef(MJCalibrateSignal, 0) // Tool to create a pedestal file (MPedestalCam)
Index: /trunk/MagicSoft/Mars/mjobs/MJCalibration.cc
===================================================================
--- /trunk/MagicSoft/Mars/mjobs/MJCalibration.cc	(revision 5160)
+++ /trunk/MagicSoft/Mars/mjobs/MJCalibration.cc	(revision 5161)
@@ -1496,5 +1496,5 @@
     if (fSequence.IsValid())
     {
-        const Int_t n0 = fSequence.SetupCalRuns(iter, fPathData);
+        const Int_t n0 = fSequence.SetupCalRuns(iter, fPathData, IsDataCheck());
         const Int_t n1 = fSequence.GetNumCalRuns();
         if (n0==0)
Index: /trunk/MagicSoft/Mars/mjobs/MJPedestal.cc
===================================================================
--- /trunk/MagicSoft/Mars/mjobs/MJPedestal.cc	(revision 5160)
+++ /trunk/MagicSoft/Mars/mjobs/MJPedestal.cc	(revision 5161)
@@ -575,5 +575,5 @@
     if (fSequence.IsValid())
     {
-        const Int_t n0 = fUseData ? fSequence.SetupDatRuns(iter, fPathData) : fSequence.SetupPedRuns(iter, fPathData);
+        const Int_t n0 = fUseData ? fSequence.SetupDatRuns(iter, fPathData, fDataCheck) : fSequence.SetupPedRuns(iter, fPathData, fDataCheck);
         const Int_t n1 = fUseData ? fSequence.GetNumDatRuns() : fSequence.GetNumPedRuns();
         if (n0==0)
