Index: /trunk/MagicSoft/Mars/mcalib/MCalibrationChargeCalc.cc
===================================================================
--- /trunk/MagicSoft/Mars/mcalib/MCalibrationChargeCalc.cc	(revision 4128)
+++ /trunk/MagicSoft/Mars/mcalib/MCalibrationChargeCalc.cc	(revision 4129)
@@ -665,10 +665,8 @@
   
   *fLog << inf << endl;
-  *fLog << GetDescriptor() << ": Errors statistics:" << endl;  
+  *fLog << GetDescriptor() << ": Fatal errors statistics:" << endl;  
 
   PrintUncalibrated(MBadPixelsPix::kChargeIsPedestal,    
                     Form("%s%2.1f%s","Signal less than ",fChargeLimit," Pedestal RMS:                "));
-  PrintUncalibrated(MBadPixelsPix::kChargeErrNotValid, 
-                    Form("%s%2.1f%s","Signal Error smaller than ",fChargeErrLimit,":                    "));
   PrintUncalibrated(MBadPixelsPix::kChargeRelErrNotValid,
                     Form("%s%2.1f%s","Signal Error bigger than ",fChargeRelErrLimit," times Mean Signal:   "));
@@ -681,10 +679,14 @@
   PrintUncalibrated(MBadPixelsPix::kMeanTimeInLast2Bins, 
                     Form("%s%2.1f%s","Mean Abs. Arr. Time in Last ",2.," Bin(s):           "));
+  PrintUncalibrated(MBadPixelsPix::kDeviatingNumPhes,    
+                    "Pixels with deviating number of phes:             ");
+
+  *fLog << inf << endl;
+  *fLog << GetDescriptor() << ": Unreliable errors statistics:" << endl;  
+
   PrintUncalibrated(MBadPixelsPix::kHiGainOscillating,   
                     "Pixels with changing Hi Gain signal over time:    ");
   PrintUncalibrated(MBadPixelsPix::kLoGainOscillating,   
                     "Pixels with changing Lo Gain signal over time:    ");
-  PrintUncalibrated(MBadPixelsPix::kDeviatingNumPhes,    
-                    "Pixels with deviating number of phes:             ");
   PrintUncalibrated(MBadPixelsPix::kHiGainNotFitted,     
                     "Pixels with unsuccesful Gauss fit to the Hi Gain: ");
@@ -755,29 +757,26 @@
 {
 
-  if (cal.GetMean() < fChargeLimit*cal.GetPedRms())
-    {
-      *fLog << warn << GetDescriptor() << ": Fitted Charge: " << cal.GetMean() << " is smaller than "
+  const Float_t mean    = cal.IsHiGainSaturation() ? cal.GetConvertedLoGainMean()    : cal.GetMean();
+  const Float_t meanerr = cal.IsHiGainSaturation() ? cal.GetConvertedLoGainMeanErr() : cal.GetMeanErr();
+  const Float_t sigma   = cal.IsHiGainSaturation() ? cal.GetConvertedLoGainSigma()   : cal.GetSigma();
+
+  if (mean < fChargeLimit*cal.GetPedRms())
+    {
+      *fLog << warn << GetDescriptor() << ": Fitted Charge: " << mean << " is smaller than "
             << fChargeLimit << " Pedestal RMS: " <<  cal.GetPedRms() << " in Pixel  " << cal.GetPixId() << endl;
       bad.SetUncalibrated( MBadPixelsPix::kChargeIsPedestal);
     }
   
-  if (cal.GetMeanErr() < fChargeErrLimit) 
-    {
-      *fLog << warn << GetDescriptor() << ": Error of Fitted Charge: " << cal.GetMeanErr() 
-            << " is smaller than " << fChargeErrLimit << " in Pixel  " << cal.GetPixId() << endl;
-      bad.SetUncalibrated( MBadPixelsPix::kChargeErrNotValid );
-    }
-      
-   if (cal.GetMean() < fChargeRelErrLimit*cal.GetMeanErr()) 
-    {
-      *fLog << warn << GetDescriptor() << ": Fitted Charge: " << cal.GetMean() << " is smaller than "
-            << fChargeRelErrLimit << "* its error: " << cal.GetMeanErr() 
+   if (mean < fChargeRelErrLimit*meanerr) 
+    {
+      *fLog << warn << GetDescriptor() << ": Fitted Charge: " << mean << " is smaller than "
+            << fChargeRelErrLimit << "* its error: " << meanerr
             << " in Pixel  " << cal.GetPixId() << endl;
       bad.SetUncalibrated( MBadPixelsPix::kChargeRelErrNotValid );
     }
 
-  if (cal.GetSigma() < cal.GetPedRms())
-    {
-      *fLog << warn << GetDescriptor() << ": Sigma of Fitted Charge: " << cal.GetSigma() 
+  if (sigma < cal.GetPedRms())
+    {
+      *fLog << warn << GetDescriptor() << ": Sigma of Fitted Charge: " << sigma
 	    << " smaller than Pedestal RMS: " << cal.GetPedRms() << " in Pixel  " << cal.GetPixId() << endl;
       bad.SetUncalibrated( MBadPixelsPix::kChargeSigmaNotValid );
@@ -812,5 +811,4 @@
 // Sets pixel to MBadPixelsPix::kUnsuitableRun, if one of the following flags is set:
 // - MBadPixelsPix::kChargeIsPedestal
-// - MBadPixelsPix::kChargeErrNotValid 
 // - MBadPixelsPix::kChargeRelErrNotValid 
 // - MBadPixelsPix::kChargeSigmaNotValid 
