Index: trunk/MagicSoft/Mars/mjobs/MJCalibrateSignal.cc
===================================================================
--- trunk/MagicSoft/Mars/mjobs/MJCalibrateSignal.cc	(revision 4895)
+++ trunk/MagicSoft/Mars/mjobs/MJCalibrateSignal.cc	(revision 4906)
@@ -59,4 +59,5 @@
 
 #include "MReadReports.h"
+#include "MReadMarsFile.h"
 #include "MGeomApply.h"
 #include "MPointingPosCalc.h"
@@ -180,5 +181,5 @@
 }
 
-Bool_t MJCalibrateSignal::ProcessFile(MPedestalCam &pedcam)
+Bool_t MJCalibrateSignal::ProcessFile(MPedestalCam &pedcam, Bool_t ismc)
 {
     if (!fSequence.IsValid())
@@ -270,15 +271,16 @@
     plist.AddToList(&tlist);
 
-    //MReadMarsFile read("Events");
-    //read.DisableAutoScheme();
-    MReadReports read;
-    read.AddTree("Events", "MTime.", kTRUE);
-    read.AddTree("Trigger");
-    read.AddTree("Camera");
-    read.AddTree("Drive");
-    read.AddTree("CC");
-    read.AddTree("Currents");
-    read.AddFiles(iter);
-    //read.AddFiles(fnamein);
+    MReadReports readreal;
+    readreal.AddTree("Events", "MTime.", kTRUE);
+    readreal.AddTree("Trigger");
+    readreal.AddTree("Camera");
+    readreal.AddTree("Drive");
+    readreal.AddTree("CC");
+    readreal.AddTree("Currents");
+    readreal.AddFiles(iter);
+
+    MReadMarsFile readmc("Events");
+    readmc.DisableAutoScheme();
+    readmc.AddFiles(iter);
 
     MGeomApply             apply; // Only necessary to create geometry
@@ -332,5 +334,5 @@
     write.AddContainer("MCerPhotEvt",         "Events");
     write.AddContainer("MPedPhotCam",         "Events");
-    write.AddContainer("MTime",               "Events");
+    write.AddContainer("MTime",               "Events", kFALSE);
     write.AddContainer("MRawEvtHeader",       "Events");
     write.AddContainer("MArrivalTime",        "Events");
@@ -383,5 +385,5 @@
 
     // Now setup main tasklist
-    tlist.AddToList(&read);
+    tlist.AddToList(ismc ? (MTask*)&readmc : (MTask*)&readreal);
     tlist.AddToList(&tlist2, "Events");
     tlist.AddToList(&pcalc,  "Drive");
Index: trunk/MagicSoft/Mars/mjobs/MJCalibrateSignal.h
===================================================================
--- trunk/MagicSoft/Mars/mjobs/MJCalibrateSignal.h	(revision 4895)
+++ trunk/MagicSoft/Mars/mjobs/MJCalibrateSignal.h	(revision 4906)
@@ -31,5 +31,5 @@
     MJCalibrateSignal(const char *name=NULL, const char *title=NULL);
 
-    Bool_t ProcessFile(MPedestalCam &cam);
+    Bool_t ProcessFile(MPedestalCam &cam, Bool_t ismc=kFALSE);
 
     ClassDef(MJCalibrateSignal, 0) // Tool to create a pedestal file (MPedestalCam)
Index: trunk/MagicSoft/Mars/mjobs/MJStar.cc
===================================================================
--- trunk/MagicSoft/Mars/mjobs/MJStar.cc	(revision 4895)
+++ trunk/MagicSoft/Mars/mjobs/MJStar.cc	(revision 4906)
@@ -49,4 +49,5 @@
 
 #include "MReadReports.h"
+#include "MReadMarsFile.h"
 #include "MGeomApply.h"
 #include "MEventRateCalc.h"
@@ -100,5 +101,5 @@
 }
 
-Bool_t MJStar::ProcessFile()
+Bool_t MJStar::ProcessFile(Bool_t ismc)
 {
     if (!fSequence.IsValid())
@@ -145,12 +146,16 @@
     plist.AddToList(&tlist);
 
-    MReadReports read;
-    read.AddTree("Events", "MTime.", kTRUE);
-    read.AddTree("Drive");
+    MReadReports readreal;
+    readreal.AddTree("Events", "MTime.", kTRUE);
+    readreal.AddTree("Drive");
     //read.AddTree("Trigger");
     //read.AddTree("Camera");
     //read.AddTree("CC");
     //read.AddTree("Currents");
-    read.AddFiles(iter);
+    readreal.AddFiles(iter);
+
+    MReadMarsFile readmc("Events");
+    readmc.DisableAutoScheme();
+    readmc.AddFiles(iter);
 
     // ------------------ Setup general tasks ----------------
@@ -215,34 +220,44 @@
     write.AddContainer("MNewImagePar2", "Events");
     write.AddContainer("MImageParTime", "Events");
-    write.AddContainer("MTime",         "Events");
     write.AddContainer("MRawEvtHeader", "Events");
-    // Monte Carlo
-    write.AddContainer("MMcEvt",              "Events", kFALSE);
-    write.AddContainer("MMcTrig",             "Events", kFALSE);
-    // Run Header
-    write.AddContainer("MRawRunHeader",       "RunHeaders");
-    write.AddContainer("MBadPixelsCam",       "RunHeaders");
-    write.AddContainer("MGeomCam",            "RunHeaders");
-    //write.AddContainer("MObservatory", "RunHeaders");
-    // Monte Carlo Headers
-    write.AddContainer("MMcTrigHeader",       "RunHeaders", kFALSE);
-    write.AddContainer("MMcConfigRunHeader",  "RunHeaders", kFALSE);
-    write.AddContainer("MMcCorsikaRunHeader", "RunHeaders", kFALSE);
-    // Drive
-    //write.AddContainer("MSrcPosCam",   "Drive");
-    write.AddContainer("MPointingPos", "Drive");
-    write.AddContainer("MReportDrive", "Drive");
-    write.AddContainer("MTimeDrive",   "Drive");
-    // Effective On Time
-    write.AddContainer("MEffectiveOnTime",     "EffectiveOnTime");
-    write.AddContainer("MTimeEffectiveOnTime", "EffectiveOnTime");
+    if (ismc)
+    {
+        write.AddContainer("MPointingPos", "Events");
+        // Monte Carlo
+        write.AddContainer("MMcEvt",              "Events");
+        write.AddContainer("MMcTrig",             "Events");
+        // Monte Carlo Headers
+        write.AddContainer("MMcTrigHeader",       "RunHeaders");
+        write.AddContainer("MMcConfigRunHeader",  "RunHeaders");
+        write.AddContainer("MMcCorsikaRunHeader", "RunHeaders");
+    }
+    else
+    {
+        write.AddContainer("MTime",         "Events");
+        // Run Header
+        write.AddContainer("MRawRunHeader",       "RunHeaders");
+        write.AddContainer("MBadPixelsCam",       "RunHeaders");
+        write.AddContainer("MGeomCam",            "RunHeaders");
+        //write.AddContainer("MObservatory", "RunHeaders");
+        // Drive
+        //write.AddContainer("MSrcPosCam",   "Drive");
+        write.AddContainer("MPointingPos", "Drive");
+        write.AddContainer("MReportDrive", "Drive");
+        write.AddContainer("MTimeDrive",   "Drive");
+        // Effective On Time
+        write.AddContainer("MEffectiveOnTime",     "EffectiveOnTime");
+        write.AddContainer("MTimeEffectiveOnTime", "EffectiveOnTime");
+    }
 
     MTaskList tlist2;
     tlist2.AddToList(&apply);
-    tlist2.AddToList(&rate);
-    //tlist2.AddToList(&rate10000);
-    tlist2.AddToList(&fill8);
-    tlist2.AddToList(&fill9);
-    tlist2.AddToList(&filla);
+    if (!ismc)
+    {
+        tlist2.AddToList(&rate);
+        //tlist2.AddToList(&rate10000);
+        tlist2.AddToList(&fill8);
+        tlist2.AddToList(&fill9);
+        tlist2.AddToList(&filla);
+    }
     //tlist2.AddToList(&fillb);
     tlist2.AddToList(&clean);
@@ -265,5 +280,5 @@
     //tlist3.AddToList(&srcpos);
 
-    tlist.AddToList(&read);
+    tlist.AddToList(ismc ? (MTask*)&readmc : (MTask*)&readreal);
     tlist.AddToList(&tlist3, "Drive");
     tlist.AddToList(&tlist2, "Events");
Index: trunk/MagicSoft/Mars/mjobs/MJStar.h
===================================================================
--- trunk/MagicSoft/Mars/mjobs/MJStar.h	(revision 4895)
+++ trunk/MagicSoft/Mars/mjobs/MJStar.h	(revision 4906)
@@ -14,5 +14,5 @@
     MJStar(const char *name=NULL, const char *title=NULL);
 
-    Bool_t ProcessFile();
+    Bool_t ProcessFile(Bool_t ismc=kFALSE);
 
     ClassDef(MJStar, 0) // Tool to create a pedestal file (MPedestalCam)
