Index: /trunk/MagicSoft/Mars/Changelog
===================================================================
--- /trunk/MagicSoft/Mars/Changelog	(revision 2539)
+++ /trunk/MagicSoft/Mars/Changelog	(revision 2540)
@@ -12,4 +12,7 @@
    * manalysis/MCalibrationCam.cc:
      - function GetPixelContent enlarged
+
+   * manalysis/MCalibrationCalc:
+     - function ReInit added like in MPedCalcPedRun
 
 
Index: /trunk/MagicSoft/Mars/manalysis/MCalibrationCalc.cc
===================================================================
--- /trunk/MagicSoft/Mars/manalysis/MCalibrationCalc.cc	(revision 2539)
+++ /trunk/MagicSoft/Mars/manalysis/MCalibrationCalc.cc	(revision 2540)
@@ -123,5 +123,4 @@
 //
 // The PreProcess searches for the following input containers:
-//  - MRawRunHeader
 //  - MRawEvtData
 //  - MPedestalCam
@@ -139,11 +138,4 @@
     fOverFlow = 0;
     fNrEvents = 0;
-
-    fRunHeader = (MRawRunHeader*)pList->FindObject("MRawRunHeader");
-    if (!fRunHeader)
-    {
-        *fLog << dbginf << "MRawRunHeader not found... aborting." << endl;
-        return kFALSE;
-    }
 
     fRawEvt = (MRawEvtData*)pList->FindObject("MRawEvtData");
@@ -211,4 +203,28 @@
 }
 
+
+// --------------------------------------------------------------------------
+//
+// The ReInit searches for the following input containers:
+//  - MRawRunHeader
+//
+Bool_t MCalibrationCalc::ReInit(MParList *pList )
+{
+ 
+    fRunHeader = (MRawRunHeader*)pList->FindObject("MRawRunHeader");
+    if (!fRunHeader)
+    {
+        *fLog << dbginf << "MRawRunHeader not found... aborting." << endl;
+        return kFALSE;
+    }
+
+    fNumHiGainSamples =  fRunHeader->GetNumSamplesHiGain();
+    fNumLoGainSamples =  fRunHeader->GetNumSamplesLoGain();
+ 
+    return kTRUE;
+ 
+}
+
+
 // --------------------------------------------------------------------------
 //
@@ -282,5 +298,5 @@
         // Assume pedestals per time slice ==> multiply with number of slices
         //
-        pedes *= (sat ? fRawEvt->GetNumLoGainSamples() : fRawEvt->GetNumHiGainSamples() );
+        pedes *= (sat ? fNumLoGainSamples : fNumHiGainSamples );
 
         Float_t rsum      = (float)sum - pedes;
Index: /trunk/MagicSoft/Mars/manalysis/MCalibrationCalc.h
===================================================================
--- /trunk/MagicSoft/Mars/manalysis/MCalibrationCalc.h	(revision 2539)
+++ /trunk/MagicSoft/Mars/manalysis/MCalibrationCalc.h	(revision 2540)
@@ -38,6 +38,10 @@
   Int_t fOverFlow;                         // Number of events with saturated Low Gain
 
+  Byte_t fNumHiGainSamples; 
+  Byte_t fNumLoGainSamples; 
+
   Byte_t fFlags;                           // Flag for the fits used
-  
+   
+
   enum
     {
@@ -55,4 +59,5 @@
   PulserColor_t  fColor;
   
+  Bool_t ReInit(MParList *pList); 
   Int_t PreProcess(MParList *pList);
   Int_t Process();
