Index: trunk/MagicSoft/Mars/mcalib/MCalibrateData.cc
===================================================================
--- trunk/MagicSoft/Mars/mcalib/MCalibrateData.cc	(revision 6845)
+++ trunk/MagicSoft/Mars/mcalib/MCalibrateData.cc	(revision 6855)
@@ -34,5 +34,5 @@
 //   This task takes the integrated charge from MExtractedSignal and applies
 //   the calibration constants from MCalibrationCam to convert the summed FADC 
-//   slices into photons. The number of photons obtained is stored in MCerPhotEvt. 
+//   slices into photons. The number of photons obtained is stored in MSignalCam. 
 //   Optionally, the calibration of pedestals from an MPedestalCam container into 
 //   an MPedPhotCam container can be chosen with the member functions 
@@ -89,5 +89,5 @@
 //   Output Containers:
 //    [MPedPhotCam]
-//    [MCerPhotEvt]
+//    [MSignalCam]
 //
 // See also: MJCalibration, MJPedestal, MJExtractSignal, MJExtractCalibTest
@@ -129,5 +129,5 @@
 #include "MBadPixelsPix.h"
 
-#include "MCerPhotEvt.h"
+#include "MSignalCam.h"
 
 ClassImp(MCalibrateData);
@@ -194,5 +194,5 @@
 //
 //  - MPedPhotCam
-//  - MCerPhotEvt
+//  - MSignalCam
 //
 Int_t MCalibrateData::PreProcess(MParList *pList)
@@ -218,5 +218,5 @@
         }
 
-        fCerPhotEvt = (MCerPhotEvt*)pList->FindCreateObj(AddSerialNumber("MCerPhotEvt"));
+        fCerPhotEvt = (MSignalCam*)pList->FindCreateObj(AddSerialNumber("MSignalCam"));
         if (!fCerPhotEvt)
             return kFALSE;
@@ -657,4 +657,7 @@
     const Float_t sqrtslices = TMath::Sqrt(slices);
 
+    Int_t numsatlo=0;
+    Int_t numsathi=0;
+
     for (UInt_t pixidx=0; pixidx<npix; pixidx++)
     {
@@ -699,11 +702,11 @@
             const Float_t nphotErr = TMath::Sqrt(TMath::Abs(nphot)) * fCalibFFactors[pixidx];
             
-            MCerPhotPix *cpix = fCerPhotEvt->AddPixel(pixidx, nphot, nphotErr);
+            fCerPhotEvt->AddPixel(pixidx, nphot, nphotErr);
 
             if (sig.GetNumHiGainSaturated() > 0)
-                cpix->SetPixelHGSaturated();
+                numsathi++;
 
             if (sig.GetNumLoGainSaturated() > 0)
-              cpix->SetPixelSaturated();
+                numsatlo++;
         } /* if (data) */
       
@@ -735,5 +738,5 @@
     if (data)
     {
-        fCerPhotEvt->FixSize();
+        fCerPhotEvt->SetNumPixelsSaturated(numsathi, numsatlo);
         fCerPhotEvt->SetReadyToSave();
     }
Index: trunk/MagicSoft/Mars/mcalib/MCalibrateData.h
===================================================================
--- trunk/MagicSoft/Mars/mcalib/MCalibrateData.h	(revision 6845)
+++ trunk/MagicSoft/Mars/mcalib/MCalibrateData.h	(revision 6855)
@@ -2,19 +2,4 @@
 #define MARS_MCalibrateData
 
-/////////////////////////////////////////////////////////////////////////////
-//                                                                         //
-// MCalibrateData                                                          //
-//                                                                         //
-// Integrates the desired ADC time slices of one pixel and apply           //
-// calibration constants                                                   //
-//                                                                         //
-// Differences between MCalibrateData and MCalibrate :                     //
-// in MCalibrateData                                                       //
-// - in ReInit the MPedPhot container is filled using                      //
-//      - the pedstals/slice from MPedestalCam                             //
-//      - the number of used FADC slices from MExtractedSignalCam          //
-//      - the photon/ADC conversion factor from MCalibrationCam            //
-//                                                                         //
-/////////////////////////////////////////////////////////////////////////////
 #ifndef MARS_MTask
 #include "MTask.h"
@@ -33,6 +18,7 @@
 
 class MPedPhotCam;
-class MCerPhotEvt;
+class MSignalCam;
 class MCalibConstCam;
+
 class MCalibrateData : public MTask
 {
@@ -50,5 +36,5 @@
   MCalibrationQECam     *fQEs;           //! Quantum efficiencies
   MExtractedSignalCam   *fSignals;       //! Integrated charge in FADCs counts
-  MCerPhotEvt           *fCerPhotEvt;    //! Cerenkov Photon Event used for calculation
+  MSignalCam            *fCerPhotEvt;    //! Cerenkov Photon Event used for calculation
   MCalibConstCam        *fCalibConstCam; //! Temporary calib consts storage
   
Index: trunk/MagicSoft/Mars/mcalib/MCalibrateRelTimes.cc
===================================================================
--- trunk/MagicSoft/Mars/mcalib/MCalibrateRelTimes.cc	(revision 6845)
+++ trunk/MagicSoft/Mars/mcalib/MCalibrateRelTimes.cc	(revision 6855)
@@ -29,5 +29,5 @@
 //   This task takes the extracted arrival times from MArrivalTimeCam for each  
 //   pixel and applies the offset calibrated in MCalibrationRelTimeCam 
-//   The calibrated arrival time and its error gets stored in MCerPhotEvt. 
+//   The calibrated arrival time and its error gets stored in MSignalCam. 
 //
 //   Input Containers:
@@ -36,5 +36,5 @@
 //
 //   Output Containers:
-//    MArrivalTime
+//    MSignalCam
 //
 //////////////////////////////////////////////////////////////////////////////
@@ -58,5 +58,6 @@
 #include "MBadPixelsPix.h"
 
-#include "MArrivalTime.h"
+#include "MSignalCam.h"
+#include "MSignalPix.h"
 
 ClassImp(MCalibrateRelTimes);
@@ -112,23 +113,11 @@
 
 
-    fArrivalTime = (MArrivalTime*)pList->FindCreateObj(AddSerialNumber("MArrivalTime"));
+    fArrivalTime = (MSignalCam*)pList->FindCreateObj(AddSerialNumber("MSignalCam"));
     if (!fArrivalTime)
-      {
-        *fLog << err << AddSerialNumber("MArrivalTime") << ": Cannot create ... aborting." << endl;
         return kFALSE;
-      }
     
     return kTRUE;
 }
 
-// --------------------------------------------------------------------------
-//
-// Check for validity of the selected calibration method, switch to a 
-// different one in case of need
-//
-Bool_t MCalibrateRelTimes::ReInit(MParList *pList)
-{
-  return kTRUE;
-}
 // --------------------------------------------------------------------------
 //
@@ -142,5 +131,5 @@
      {
      // FIXME: MArrivalTime must be of variable size -
-     //        like MCerPhotEvt - because we must be able
+     //        like MSignalCam - because we must be able
      //        to reduce size by zero supression
      //        For the moment this check could be done in ReInit...
@@ -172,5 +161,5 @@
         const Float_t time = signal - offset;
 
-        fArrivalTime->SetTime(pixidx, time);
+        (*fArrivalTime)[pixidx].SetArrivalTime(time);
 
     } /* for (UInt_t pixidx=0; pixidx<npix; pixidx++) */
Index: trunk/MagicSoft/Mars/mcalib/MCalibrateRelTimes.h
===================================================================
--- trunk/MagicSoft/Mars/mcalib/MCalibrateRelTimes.h	(revision 6845)
+++ trunk/MagicSoft/Mars/mcalib/MCalibrateRelTimes.h	(revision 6855)
@@ -18,5 +18,6 @@
 class MCalibrationRelTimeCam;
 class MArrivalTimeCam;
-class MArrivalTime;
+class MSignalCam;
+
 class MCalibrateRelTimes : public MTask
 {
@@ -26,8 +27,7 @@
     MBadPixelsCam          *fBadPixels;    // Bad Pixels information
     MArrivalTimeCam        *fSignals;      // Extracted Arrival Time
-    MArrivalTime           *fArrivalTime;  // Calibrated arrival times
+    MSignalCam             *fArrivalTime;  // Calibrated arrival times
 
     Int_t PreProcess(MParList *pList);
-    Bool_t ReInit(MParList *pList);
     Int_t Process();
 
Index: trunk/MagicSoft/Mars/mcalib/MCalibrationChargeCalc.cc
===================================================================
--- trunk/MagicSoft/Mars/mcalib/MCalibrationChargeCalc.cc	(revision 6845)
+++ trunk/MagicSoft/Mars/mcalib/MCalibrationChargeCalc.cc	(revision 6855)
@@ -489,18 +489,12 @@
       fBlindCam = (MCalibrationBlindCam*)pList->FindObject(AddSerialNumber("MCalibrationBlindCam"));
       if (!fBlindCam)
-        {
-          *fLog << endl;
-          *fLog << warn << GetDescriptor() 
-                << ": No MCalibrationBlindCam found... no Blind Pixel method! " << endl;
-        }
+        *fLog << warn << GetDescriptor() 
+              << ": No MCalibrationBlindCam found... no Blind Pixel method! " << endl;
     }
   
   fHBlindCam = (MHCalibrationChargeBlindCam*)pList->FindObject(AddSerialNumber("MHCalibrationChargeBlindCam"));  
   if (!fHBlindCam)
-    {
-      *fLog << endl;
-      *fLog << warn << GetDescriptor() 
-            << ": No MHCalibrationChargeBlindCam found... no Blind Pixel method! " << endl;
-    }
+    *fLog << warn << GetDescriptor() 
+          << ": No MHCalibrationChargeBlindCam found... no Blind Pixel method! " << endl;
 
   fIntensBad = (MBadPixelsIntensityCam*)pList->FindObject(AddSerialNumber("MBadPixelsIntensityCam"));
@@ -522,9 +516,6 @@
   fPINDiode = (MCalibrationChargePINDiode*)pList->FindObject("MCalibrationChargePINDiode");
   if (!fPINDiode)
-    {
-      *fLog << endl;
-      *fLog << warn << GetDescriptor() 
-            << ": MCalibrationChargePINDiode not found... no PIN Diode method! " << endl;
-    }
+    *fLog << warn << GetDescriptor() 
+          << ": No MCalibrationChargePINDiode found... no PIN Diode method! " << endl;
   
   MCalibrationQECam     *qecam     = fIntensQE      
@@ -1865,4 +1856,7 @@
     ? (MCalibrationChargeCam*)fIntensCam->GetCam()  : fCam;
 
+  if (!blindcam)
+    return;
+
   //
   // Set the results in the MCalibrationChargeCam
@@ -1956,4 +1950,8 @@
   MBadPixelsCam         *badcam    = fIntensBad 
     ? (MBadPixelsCam*)        fIntensBad->GetCam()  : fBadPixels;
+
+  if (!fPINDiode)
+    return;
+
   //
   //  With the knowledge of the overall photon flux, calculate the 
