Index: /trunk/MagicSoft/Mars/Changelog
===================================================================
--- /trunk/MagicSoft/Mars/Changelog	(revision 5016)
+++ /trunk/MagicSoft/Mars/Changelog	(revision 5017)
@@ -43,4 +43,5 @@
      - took out FindColor() which is now taken care of by 
        MCalibColorSet
+     - introduced MBadPixelsIntensityCam
 
    * mhcalib/MHGausEvents.cc
Index: /trunk/MagicSoft/Mars/mcalib/MCalibrationCam.h
===================================================================
--- /trunk/MagicSoft/Mars/mcalib/MCalibrationCam.h	(revision 5016)
+++ /trunk/MagicSoft/Mars/mcalib/MCalibrationCam.h	(revision 5017)
@@ -15,5 +15,5 @@
 #endif
 
-class TClonesArray;
+class TObjArray;
 
 class MCalibrationPix;
@@ -44,9 +44,13 @@
   PulserColor_t fPulserColor;        // Colour of the pulsed LEDs
 
-  TClonesArray *fPixels;             // Array of MCalibrationPix, one per pixel
-  TClonesArray *fAverageAreas;       // Array of MCalibrationPix, one per pixel area
-  TClonesArray *fAverageSectors;     // Array of MCalibrationPix, one per camera sector
-  TClonesArray *fAverageBadAreas;    // Array of MBadPixelsPix,   one per pixel area
-  TClonesArray *fAverageBadSectors;  // Array of MBadPixelsPix,   one per camera sector
+  TObjArray *fPixels;                //-> Array of MCalibrationPix, one per pixel
+  TObjArray *fAverageAreas;          //-> Array of MCalibrationPix, one per pixel area
+  TObjArray *fAverageSectors;        //-> Array of MCalibrationPix, one per camera sector
+  TObjArray *fAverageBadAreas;       //-> Array of MBadPixelsPix,   one per pixel area
+  TObjArray *fAverageBadSectors;     //-> Array of MBadPixelsPix,   one per camera sector
+
+  virtual void Add(const UInt_t a, const UInt_t b);
+  virtual void AddArea(const UInt_t a, const UInt_t b);
+  virtual void AddSector(const UInt_t a, const UInt_t b);
   
 public:
@@ -97,5 +101,5 @@
   void  SetPulserColor         ( const PulserColor_t col=kCT1 )  { fPulserColor = col; }
   
-  ClassDef(MCalibrationCam, 4)	// Base class Container for Calibration Results Camera
+  ClassDef(MCalibrationCam, 5)	// Base class Container for Calibration Results Camera
 };
 
Index: /trunk/MagicSoft/Mars/mjobs/MJCalibration.cc
===================================================================
--- /trunk/MagicSoft/Mars/mjobs/MJCalibration.cc	(revision 5016)
+++ /trunk/MagicSoft/Mars/mjobs/MJCalibration.cc	(revision 5017)
@@ -1432,5 +1432,8 @@
 
       MCalibrationBlindCamOneOldStyle blindresults;
-      blindresults.Copy(fCalibrationBlindCam);
+      if (IsIntensity())
+        blindresults.Copy(*fIntensBlindCam.GetCam());
+      else
+        blindresults.Copy(fCalibrationBlindCam);
 
       blindext.SetExtractionType(MExtractBlindPixel::kIntegral);
@@ -1443,5 +1446,9 @@
 
       MCalibrationBlindCamTwoNewStyle blindresults;
-      blindresults.Copy(fCalibrationBlindCam);
+
+      if (IsIntensity())
+        blindresults.Copy(*fIntensBlindCam.GetCam());
+      else
+        blindresults.Copy(fCalibrationBlindCam);
 
       blindext.SetNumBlindPixels(blindresults.GetSize());
@@ -1579,4 +1586,5 @@
         //        plist.AddToList(&fIntensCalibrationPINDiode);
         plist.AddToList(&fIntensRelTimeCam);
+        plist.AddToList(&fIntensBadCam);
       }
     else
@@ -1964,4 +1972,12 @@
     if (IsIntensity())
       {
+        *fLog << inf << " - MBadPixelsIntensityCam..." << flush;
+        if (fIntensBadCam.Write()<=0)
+          {
+            *fLog << err << "Unable to write MBadPixelsIntensityCam to " << oname << endl;
+            return kFALSE;
+          }
+        *fLog << inf << "ok." << endl;
+
         *fLog << inf << " - MCalibrationIntensityChargeCam..." << flush;
         if (fIntensCalibCam.Write()<=0)
Index: /trunk/MagicSoft/Mars/mjobs/MJCalibration.h
===================================================================
--- /trunk/MagicSoft/Mars/mjobs/MJCalibration.h	(revision 5016)
+++ /trunk/MagicSoft/Mars/mjobs/MJCalibration.h	(revision 5017)
@@ -31,4 +31,7 @@
 #ifndef MARS_MCalibrationQECam
 #include "MCalibrationQECam.h"
+#endif
+#ifndef MARS_MBadPixelsIntensityCam
+#include "MBadPixelsIntensityCam.h"
 #endif
 #ifndef MARS_MBadPixelsCam
@@ -82,5 +85,6 @@
   MExtractTime   *fTimeExtractor;                       // Arrival Time extractor
   
-  MBadPixelsCam                   fBadPixels;           // Bad Pixels cam, can be set from previous runs
+  MBadPixelsIntensityCam          fIntensBadCam;        // Bad Pixels cam, can be set from previous runs
+  MBadPixelsCam                   fBadPixels;           // Bad Pixels cam, can be set from previous runs  
   MCalibrationIntensityChargeCam  fIntensCalibCam;      // Calibration conversion factors FADC2Phe for diff. intens.
   MCalibrationChargeCam           fCalibrationCam;      // Calibration conversion factors FADC2Phe  
@@ -143,4 +147,5 @@
   MCalibrationIntensityRelTimeCam &GetIntensRelTimeCam()     { return fIntensRelTimeCam; }
   MCalibrationIntensityQECam      &GetIntensQECam()          { return fIntensQECam;      }
+  MBadPixelsIntensityCam          &GetIntensBadCam()         { return fIntensBadCam;     }  
 
   MCalibrationChargeCam           &GetCalibrationCam()       { return fCalibrationCam;   }
