Index: /trunk/MagicSoft/Mars/mcalib/MExtractBlindPixel.cc
===================================================================
--- /trunk/MagicSoft/Mars/mcalib/MExtractBlindPixel.cc	(revision 3275)
+++ /trunk/MagicSoft/Mars/mcalib/MExtractBlindPixel.cc	(revision 3276)
@@ -49,5 +49,5 @@
 using namespace std;
 
-const UInt_t MExtractBlindPixel::fgBlindPixelIdx   = 559;
+const Int_t  MExtractBlindPixel::fgBlindPixelIdx   = 559;
 const Byte_t MExtractBlindPixel::fgSaturationLimit = 254;
 const Byte_t MExtractBlindPixel::fgFirst =  3;
@@ -113,4 +113,5 @@
 
     fBlindPixel->SetUsedFADCSlices(fFirst, fLast);
+    fBlindPixel->SetBlindPixelIdx(fBlindPixelIdx);
 
     return kTRUE;
@@ -131,5 +132,5 @@
     pixel.Jump(fBlindPixelIdx);
  
-    UInt_t sat  = 0;
+    const UInt_t nhigain = pixel.GetNumHiGainSamples();
 
     Byte_t *ptr = pixel.GetHiGainSamples();
@@ -141,9 +142,10 @@
     UInt_t first = fFirst;
     UInt_t last  = fLast;
-
-    if (last > 15)
+    UInt_t sat  = 0;
+
+    if (last > nhigain)
       {
-        diff = last - 15;
-        last = 15;
+        diff = last - nhigain;
+        last = nhigain;
       }
     
@@ -186,4 +188,5 @@
       *fLog << warn << "WARNING - saturation occurred in the Blind Pixel " << endl;
 
+
     fBlindPixel->SetReadyToSave();
 
Index: /trunk/MagicSoft/Mars/mcalib/MExtractBlindPixel.h
===================================================================
--- /trunk/MagicSoft/Mars/mcalib/MExtractBlindPixel.h	(revision 3275)
+++ /trunk/MagicSoft/Mars/mcalib/MExtractBlindPixel.h	(revision 3276)
@@ -24,5 +24,5 @@
 private:
 
-  static const UInt_t fgBlindPixelIdx;  
+  static const Int_t  fgBlindPixelIdx;  
   static const Byte_t fgSaturationLimit;
   static const Byte_t fgFirst;
@@ -41,5 +41,5 @@
   Byte_t  fSaturationLimit;
 
-  UInt_t  fBlindPixelIdx;
+  Int_t  fBlindPixelIdx;
   Int_t  PreProcess(MParList *pList);
   Int_t  Process();
@@ -54,5 +54,5 @@
   void SetRange(const Byte_t first=fgFirst, const Byte_t last=fgLast);
   void SetSaturationLimit(const Byte_t lim=fgSaturationLimit) { fSaturationLimit = lim; }
-  void SetBlindPixelIdx(  const UInt_t idx=fgBlindPixelIdx  ) { fBlindPixelIdx   = idx; }  
+  void SetBlindPixelIdx(  const  Int_t idx=fgBlindPixelIdx  ) { fBlindPixelIdx   = idx; }  
 
   ClassDef(MExtractBlindPixel, 0) // Task to fill the Extracted BlindPixel Containers from raw data
Index: /trunk/MagicSoft/Mars/mcalib/MExtractedSignalBlindPixel.h
===================================================================
--- /trunk/MagicSoft/Mars/mcalib/MExtractedSignalBlindPixel.h	(revision 3275)
+++ /trunk/MagicSoft/Mars/mcalib/MExtractedSignalBlindPixel.h	(revision 3276)
@@ -5,4 +5,6 @@
 #include "MParContainer.h"
 #endif
+
+#include <TArrayI.h>
 
 class MExtractedSignalBlindPixel : public MParContainer
@@ -21,4 +23,6 @@
   Float_t fPedRmsErr;
 
+  Int_t fBlindPixelIdx;
+
 public:
 
@@ -29,8 +33,9 @@
   
   // Setter
-  void SetExtractedSignal(const UInt_t sig)          { fExtractedSignal = sig;  }
-  void SetNumSaturated(   const Byte_t numsat)       { fNumSaturated    = numsat;  }
+  void SetExtractedSignal(const UInt_t sig    )    { fExtractedSignal = sig;     }
+  void SetNumSaturated(   const Byte_t numsat )    { fNumSaturated    = numsat;  }
   void SetUsedFADCSlices( const Byte_t first, const Byte_t num);
-    
+  void SetNumFADCSamples( const Byte_t num    )    { fNumFADCSamples  = num;     }    
+
   void SetPed(      const Float_t f )     { fPed       = f; }
   void SetPedErr(   const Float_t f )     { fPedErr    = f; }
@@ -38,7 +43,8 @@
   void SetPedRmsErr(const Float_t f )     { fPedRmsErr = f; }
 
+  void SetBlindPixelIdx( const Int_t i)   { fBlindPixelIdx = i; }
+
     // Getter
   UInt_t GetExtractedSignal()    const { return fExtractedSignal; }
-
   Byte_t GetNumFADCSamples()     const { return fNumFADCSamples;  }
   
