Index: trunk/MagicSoft/Mars/Changelog
===================================================================
--- trunk/MagicSoft/Mars/Changelog	(revision 3469)
+++ trunk/MagicSoft/Mars/Changelog	(revision 3470)
@@ -23,4 +23,7 @@
    * mbadpixels/MBadPixelsPix.h
      - removed bits about validity of calibration methods
+
+   * mbadpixels/MBadPixelsCam.cc
+     - updated GetPixelContent
 
 
Index: trunk/MagicSoft/Mars/mbadpixels/MBadPixelsCam.cc
===================================================================
--- trunk/MagicSoft/Mars/mbadpixels/MBadPixelsCam.cc	(revision 3469)
+++ trunk/MagicSoft/Mars/mbadpixels/MBadPixelsCam.cc	(revision 3470)
@@ -237,6 +237,109 @@
 Bool_t MBadPixelsCam::GetPixelContent(Double_t &val, Int_t idx, const MGeomCam &cam, Int_t type) const
 {
-    val = (*this)[idx].GetInfo()[0];
-    return (*this)[idx].IsOK();
+
+  if (idx > GetSize())
+    return kFALSE;
+
+  switch (type)
+    {
+    case 0:
+      val = (*this)[idx].GetInfo()[0];
+      return (*this)[idx].IsOK();
+      break;
+    case 1:
+      val = (*this)[idx].IsUnsuitableRun();
+      return val;
+      break;
+    case 2:
+      val = (*this)[idx].IsUnsuitableEvt();
+      return val;
+      break;
+    case 3:
+      val = (*this)[idx].IsUnreliableRun();
+      return val;
+      break;
+    case 4:
+      val = (*this)[idx].IsHiGainBad();
+      return val;
+      break;
+    case 5:
+      val = (*this)[idx].IsLoGainBad();
+      return val;
+      break;
+    case 6:
+      val = (*this)[idx].IsCalibrationSignalOK();
+      return val;
+      break;
+    case 7:
+      val = (*this)[idx].IsCalibrationFitOK();
+      return val;
+      break;
+    case 8:
+      val = (*this)[idx].IsCalibrationOscillating();
+      return val;
+      break;
+    case 9:
+      val = (*this)[idx].IsCalibrationResultOK();
+      return val;
+      break;
+    case 10:
+      val = (*this)[idx].IsHiGainSaturation();
+      return val;
+      break;
+    case 11:
+      val = (*this)[idx].IsLoGainSaturation();
+      return val;
+      break;
+    case 12:
+      val = (*this)[idx].IsNotCalibrated();
+      return val;
+      break;
+    case 13:
+      val = (*this)[idx].IsMeanTimeInLastBin();
+      return val;
+      break;
+    case 14:
+      val = (*this)[idx].IsMeanTimeInFirstBin();      
+      return val;
+      break;
+    case 15:
+      val = (*this)[idx].IsLoGainOscillating();
+      return val;
+      break;
+    case 16:
+      val = (*this)[idx].IsHiGainOscillating();
+      return val;
+      break;
+    case 17:
+      val = (*this)[idx].IsConvHiLoNotValid();
+      return val;
+      break;
+    case 18:
+      val = (*this)[idx].IsChargeSigmaNotValid();
+      return val;
+      break;
+    case 19:
+      val = (*this)[idx].IsChargeRelErrNotValid();
+      return val;
+      break;
+    case 20:
+      val = (*this)[idx].IsChargeErrNotValid();
+      return val;
+    case 21:
+      val = (*this)[idx].IsChargeIsPedestal();
+      return val;
+    case 22:
+      val = (*this)[idx].IsLoGainNotFitted();
+      return val;
+      break;
+    case 23:
+      val = (*this)[idx].IsHiGainNotFitted();
+      return val;
+      break;
+    default:
+      return kFALSE;
+    }
+  
+  return kFALSE;
 }
 
