Index: trunk/MagicSoft/Mars/macros/bootcampstandardanalysis.C
===================================================================
--- trunk/MagicSoft/Mars/macros/bootcampstandardanalysis.C	(revision 3255)
+++ trunk/MagicSoft/Mars/macros/bootcampstandardanalysis.C	(revision 3265)
@@ -133,4 +133,5 @@
    // hists
     MFillH fillpin("MHCalibrationChargePINDiode", "MExtractedSignalPINDiode");
+    MFillH fillcam("MHCalibrationChargeCam"     , "MExtractedSignalCam");
 
     //tasks
@@ -162,4 +163,5 @@
     //
     tlist2.AddToList(&fillpin);
+    tlist2.AddToList(&fillcam); 
     tlist2.AddToList(&calcalc);
     //
Index: trunk/MagicSoft/Mars/macros/calibration.C
===================================================================
--- trunk/MagicSoft/Mars/macros/calibration.C	(revision 3255)
+++ trunk/MagicSoft/Mars/macros/calibration.C	(revision 3265)
@@ -23,6 +23,6 @@
 \* ======================================================================== */
 
-const TString pedfile = "../20040215_16770_P_OffCrab4_E.root";
-const TString calfile = "../20040215_16771_C_OffCrab4_E.root";
+//const TString pedfile = "../20040215_16770_P_OffCrab4_E.root";
+//const TString calfile = "../20040215_16771_C_OffCrab4_E.root";
 
 //const TString pedfile = "/mnt/users/mdoro/Mars/Data/20040201_14418_P_OffMrk421-1_E.root";
@@ -113,5 +113,5 @@
     // Look at one specific pixel, after all the histogram manipulations:
     //
-    hpedcam[9].DrawClone("fourierevents");
+//    hpedcam[9].DrawClone("fourierevents");
 
 
@@ -223,5 +223,8 @@
     MCalibrationChargeCam   calcam;
     MHCalibrationRelTimeCam timecam;
-    //
+    MHCalibrationChargeCam  chargecam;
+    MHCalibrationChargePINDiode chargepin;
+
+   //
     // Get the previously created MPedestalCam into the new Parameter List 
     //
@@ -231,4 +234,6 @@
     plist2.AddToList(&calcam);
     plist2.AddToList(&timecam);
+    plist2.AddToList(&chargecam);
+    plist2.AddToList(&chargepin);
     //
     // Get the MAGIC geometry
@@ -255,4 +260,5 @@
     MFillH filltime("MHCalibrationRelTimeCam", "MArrivalTime");
     MFillH fillpin("MHCalibrationChargePINDiode", "MExtractedSignalPINDiode");
+    MFillH fillcam("MHCalibrationChargeCam"     , "MExtractedSignalCam");
 
     //
@@ -285,10 +291,4 @@
     // calcalc.ExcludePixelsFromAsciiFile("badpixels.dat");
     
-    //
-    // In case, you want to skip the quality checks
-    // (NOT RECOMMENDED!!!)
-    //
-    // calcalc.SkipQualityChecks();
-
     //
     // In case, we want to apply another fit function to the 
@@ -321,4 +321,5 @@
     tlist2.AddToList(&filltime);
     tlist2.AddToList(&fillpin);
+    tlist2.AddToList(&fillcam);
     //
     tlist2.AddToList(&calcalc);
@@ -346,5 +347,5 @@
     // just one example how to get the plots of individual pixels
     //
-    calcam[564].DrawClone();
+    chargecam[5].DrawClone("fourierevents");
 
     // Create histograms to display
@@ -354,5 +355,5 @@
     MHCamera disp4  (geomcam, "Cal;RSigma",         "Reduced Sigmas");
     MHCamera disp5  (geomcam, "Cal;RSigma/Charge",  "Reduced Sigma per Charge");
-    MHCamera disp6  (geomcam, "Cal;FFactorPhe",     "Nr. of Phe's (F-Factor Method)");
+    MHCamera disp6  (geomcam, "Cal;FFactorPh",      "Nr. of Photons (F-Factor Method)");
     MHCamera disp7  (geomcam, "Cal;FFactorConv",    "Conversion Factor (F-Factor Method)");
     MHCamera disp8  (geomcam, "Cal;FFactorFFactor", "Total F-Factor (F-Factor Method)");
@@ -366,18 +367,24 @@
     MHCamera disp16 (geomcam, "Cal;NotFitted",      "Pixels that could not be fitted");
     MHCamera disp17 (geomcam, "Cal;NotFitValid",    "Pixels with not valid fit results");
-    MHCamera disp18 (geomcam, "Cal;Oscillating",    "Oscillating Pixels");
-    MHCamera disp19 (geomcam, "Cal;Saturation",     "Pixels with saturated Hi Gain");
-
-    MHCamera disp20 (geomcam, "Cal;Ped",         "Pedestals");
-    MHCamera disp21 (geomcam, "Cal;PedRms",      "Pedestal RMS");
-
-    MHCamera disp22 (geomcam, "time;Time",        "Rel. Arrival Times");
-    MHCamera disp23 (geomcam, "time;SigmaTime",   "Sigma of Rel. Arrival Times");
-    MHCamera disp24 (geomcam, "time;TimeProb",    "Probability of Time Fit");
-    MHCamera disp25 (geomcam, "time;NotFitValid", "Pixels with not valid fit results");
-    MHCamera disp26 (geomcam, "time;Oscillating", "Oscillating Pixels");
-
-    MHCamera disp27 (geomcam, "Cal;AbsTimeMean", "Abs. Arrival Times");
-    MHCamera disp28 (geomcam, "Cal;AbsTimeRms",  "RMS of Arrival Times");
+    MHCamera disp18 (geomcam, "Cal;HiGainOscillating", "Oscillating Pixels HI Gain");
+    MHCamera disp19 (geomcam, "Cal;LoGainOscillating", "Oscillating Pixels LO Gain");
+    MHCamera disp20 (geomcam, "Cal;HiGainPickup",      "Number Pickup events Hi Gain");
+    MHCamera disp21 (geomcam, "Cal;LoGainPickup",      "Number Pickup events Lo Gain");
+    MHCamera disp22 (geomcam, "Cal;Saturation",        "Pixels with saturated Hi Gain");
+    MHCamera disp23 (geomcam, "Cal;FFactorValid",      "Pixels with valid F-Factor calibration");
+    MHCamera disp24 (geomcam, "Cal;BlindPixelValid",   "Pixels with valid BlindPixel calibration");
+    MHCamera disp25 (geomcam, "Cal;PINdiodeFFactorValid",  "Pixels with valid PINDiode calibration");
+
+    MHCamera disp26 (geomcam, "Cal;Ped",         "Pedestals");
+    MHCamera disp27 (geomcam, "Cal;PedRms",      "Pedestal RMS");
+
+    MHCamera disp28 (geomcam, "time;Time",        "Rel. Arrival Times");
+    MHCamera disp29 (geomcam, "time;SigmaTime",   "Sigma of Rel. Arrival Times");
+    MHCamera disp30 (geomcam, "time;TimeProb",    "Probability of Time Fit");
+    MHCamera disp31 (geomcam, "time;NotFitValid", "Pixels with not valid fit results");
+    MHCamera disp32 (geomcam, "time;Oscillating", "Oscillating Pixels");
+
+    MHCamera disp33 (geomcam, "Cal;AbsTimeMean", "Abs. Arrival Times");
+    MHCamera disp34 (geomcam, "Cal;AbsTimeRms",  "RMS of Arrival Times");
 
     // Fitted charge means and sigmas
@@ -425,31 +432,36 @@
     disp17.SetCamContent(calcam,29);
     disp18.SetCamContent(calcam,30);
+    disp19.SetCamContent(calcam,31);
+    disp20.SetCamContent(calcam,32);
+    disp21.SetCamContent(calcam,33);
 
     // Lo Gain calibration
-    disp19.SetCamContent(calcam,31);
-
+    disp22.SetCamContent(calcam,34);
+
+    // Valid flags
+    disp23.SetCamContent(calcam,35);
+    disp24.SetCamContent(calcam,36);
+    disp25.SetCamContent(calcam,37);
 
     // Pedestals
-    disp20.SetCamContent(calcam,35);
-    disp20.SetCamError(  calcam,36);
-    disp21.SetCamContent(calcam,37);
-    disp21.SetCamError(  calcam,38);
-
-
+    disp26.SetCamContent(calcam,38);
+    disp26.SetCamError(  calcam,39);
+    disp27.SetCamContent(calcam,40);
+    disp27.SetCamError(  calcam,41);
+
+/*
     // Relative Times
-    disp22.SetCamContent(timecam,0);
-    disp22.SetCamError(  timecam,1);
-    disp23.SetCamContent(timecam,2);
-    disp23.SetCamError(  timecam,3);
-    disp24.SetCamContent(timecam,4);
-    disp25.SetCamContent(timecam,5);
-    disp26.SetCamContent(timecam,6);
-
+    disp28.SetCamContent(timecam,0);
+    disp28.SetCamError(  timecam,1);
+    disp29.SetCamContent(timecam,2);
+    disp29.SetCamError(  timecam,3);
+    disp30.SetCamContent(timecam,4);
+    disp31.SetCamContent(timecam,5);
+    disp32.SetCamContent(timecam,6);
+*/
     // Absolute Times
-    disp27.SetCamContent(calcam,39);
-    disp27.SetCamError(  calcam,40);
-    disp28.SetCamContent(calcam,41);
-    disp28.SetCamError(  calcam,42);
-
+    disp33.SetCamContent(calcam,42);
+    disp33.SetCamError(  calcam,43);
+    disp34.SetCamContent(calcam,43);
 
     disp1.SetYTitle("Charge [FADC units]");
@@ -460,6 +472,6 @@
     disp5.SetYTitle("Reduced Sigma / Mean Charge [1]");
 
-    disp6.SetYTitle("Nr. Photo-Electrons [1]");
-    disp7.SetYTitle("Conversion Factor [PhE/FADC Count]");
+    disp6.SetYTitle("Nr. Photons [1]");
+    disp7.SetYTitle("Conversion Factor [Ph/FADC Count]");
     disp8.SetYTitle("\\sqrt{N_{PhE}}*\\sigma_{Charge}/\\mu_{Charge} [1]");
 
@@ -477,17 +489,23 @@
     disp18.SetYTitle("[1]");
     disp19.SetYTitle("[1]");
-
-    disp20.SetYTitle("Ped [FADC Counts ]");
-    disp21.SetYTitle("RMS_{Ped} [FADC Counts ]");
-
-    disp22.SetYTitle("Time Offset [ns]");
-    disp23.SetYTitle("Timing resolution [ns]");
-    disp24.SetYTitle("P_{Time} [1]");
-
+    disp20.SetYTitle("[1]");
+    disp21.SetYTitle("[1]");
+    disp22.SetYTitle("[1]");
+    disp23.SetYTitle("[1]");
+    disp24.SetYTitle("[1]");
     disp25.SetYTitle("[1]");
-    disp26.SetYTitle("[1]");
-
-    disp27.SetYTitle("Mean Abs. Time [FADC slice]");
-    disp28.SetYTitle("RMS Abs. Time [FADC slices]");
+
+    disp26.SetYTitle("Ped [FADC Counts ]");
+    disp27.SetYTitle("RMS_{Ped} [FADC Counts ]");
+
+    disp28.SetYTitle("Time Offset [ns]");
+    disp29.SetYTitle("Timing resolution [ns]");
+    disp30.SetYTitle("P_{Time} [1]");
+
+    disp31.SetYTitle("[1]");
+    disp32.SetYTitle("[1]");
+
+    disp33.SetYTitle("Mean Abs. Time [FADC slice]");
+    disp34.SetYTitle("RMS Abs. Time [FADC slices]");
 
     gStyle->SetOptStat(1111);
@@ -540,16 +558,22 @@
     // Defects
     TCanvas &c7 = display->AddTab("Defects");
-    c7.Divide(4,2);
-
-    CamDraw(c7, disp15,calcam,1,4, 0);
-    CamDraw(c7, disp16,calcam,2,4, 0);
-    CamDraw(c7, disp17,calcam,3,4, 0);
-    CamDraw(c7, disp18,calcam,4,4,0);
-
-    // Lo Gain Calibration
-    TCanvas &c8 = display->AddTab("LowGain");
-    c8.Divide(1,3);
-
-    CamDraw(c8, disp19,calcam,1,4,0);
+    c7.Divide(7,2);
+
+    CamDraw(c7, disp15,calcam,1,7, 0);
+    CamDraw(c7, disp16,calcam,2,7, 0);
+    CamDraw(c7, disp17,calcam,3,7, 0);
+    CamDraw(c7, disp18,calcam,4,7, 0);
+    CamDraw(c7, disp19,calcam,5,7, 0);
+    CamDraw(c7, disp20,calcam,6,7, 0);
+    CamDraw(c7, disp21,calcam,7,7, 0);
+
+    // Valid flags
+    TCanvas &c8 = display->AddTab("Validity");
+    c8.Divide(4,2);
+
+    CamDraw(c8, disp22,calcam,1,4,0);
+    CamDraw(c8, disp23,calcam,2,4,0);
+    CamDraw(c8, disp24,calcam,3,4,0);
+    CamDraw(c8, disp25,calcam,4,4,0);
 
 
@@ -558,14 +582,15 @@
     c9.Divide(2,3);
 
-    CamDraw(c9,disp20,calcam,1,2,1);
-    CamDraw(c9,disp21,calcam,2,2,2);
-
+    CamDraw(c9,disp26,calcam,1,2,1);
+    CamDraw(c9,disp27,calcam,2,2,2);
+
+/*
     // Rel. Times
     TCanvas &c10 = display->AddTab("Fitted Rel. Times");
     c10.Divide(3,3);
 
-    CamDraw(c10,disp22,calcam,1,3,2);
-    CamDraw(c10,disp23,calcam,2,3,2);
-    CamDraw(c10,disp24,calcam,3,3,4);
+    CamDraw(c10,disp28,calcam,1,3,2);
+    CamDraw(c10,disp29,calcam,2,3,2);
+    CamDraw(c10,disp30,calcam,3,3,4);
 
     // Time Defects
@@ -573,13 +598,14 @@
     c11.Divide(2,2);
 
-    CamDraw(c11, disp25,calcam,1,2, 0);
-    CamDraw(c11, disp26,calcam,2,2, 0);
-
+    CamDraw(c11, disp31,calcam,1,2, 0);
+    CamDraw(c11, disp32,calcam,2,2, 0);
+*/
     // Abs. Times
     TCanvas &c12 = display->AddTab("Abs. Times");
     c12.Divide(2,3);
 
-    CamDraw(c12,disp27,calcam,1,2,2);
-    CamDraw(c12,disp28,calcam,2,2,2);
+    CamDraw(c12,disp33,calcam,1,2,2);
+    CamDraw(c12,disp34,calcam,2,2,2);
+
 }
 
Index: trunk/MagicSoft/Mars/macros/pedphotcalc.C
===================================================================
--- trunk/MagicSoft/Mars/macros/pedphotcalc.C	(revision 3255)
+++ trunk/MagicSoft/Mars/macros/pedphotcalc.C	(revision 3265)
@@ -35,7 +35,14 @@
 #include "MEvtLoop.h"
 #include "MCalibrationChargeCam.h"
+#include "MHCalibrationChargeCam.h"
+#include "MCalibrationChargePINDiode.h"
+#include "MHCalibrationChargePINDiode.h"
+#include "MCalibrationChargeCalc.h"
 #include "MExtractedSignalCam.h"
 #include "MExtractSignal.h" 
-#include "MCalibrationChargeCalc.h"
+#include "MExtractedSignalPINDiode.h"
+#include "MExtractPINDiode.h" 
+#include "MExtractedSignalBlindPixel.h"
+#include "MExtractBlindPixel.h" 
 #include "MCerPhotEvt.h"
 #include "MCalibrate.h"
@@ -111,10 +118,17 @@
   MCalibrationChargeCam calcam;
   MExtractedSignalCam   sigcam;
-  
+
+  MHCalibrationChargeCam  chargecam;
+  MHCalibrationChargePINDiode chargepin;
+  calcam.SetColor(MCalibrationChargeCam::kECT1);
+  pindiode.SetColor(MCalibrationChargePINDiode::kECT1);
+  //
   plist2.AddToList(&geomcam);
   plist2.AddToList(&pedcam);
   plist2.AddToList(&calcam);
   plist2.AddToList(&sigcam);
-  
+  plist2.AddToList(&chargecam);
+  plist2.AddToList(&chargepin);  
+
   //tasks
   MReadMarsFile read2("Events", calname);
@@ -127,4 +141,5 @@
   
   MFillH fillpin("MHCalibrationChargePINDiode", "MExtractedSignalPINDiode");
+  MFillH fillcam("MHCalibrationChargeCam"     , "MExtractedSignalCam");
   // 
   // Apply a filter against cosmics
@@ -146,4 +161,5 @@
   //
   tlist2.AddToList(&fillpin);
+  tlist2.AddToList(&fillcam);
   tlist2.AddToList(&calcalc);
   
