Index: trunk/MagicSoft/Mars/Changelog
===================================================================
--- trunk/MagicSoft/Mars/Changelog	(revision 2945)
+++ trunk/MagicSoft/Mars/Changelog	(revision 2946)
@@ -10,20 +10,19 @@
 
 
+
  2004/01/28: Markus Gaug
 
-   * mcalib/MCalibrationCalc.[h,cc]
-   * mcalib/MCalibrationCam.[h,cc]
+   * mcalib/MCalibrationCalc.[h,cc], mcalib/MCalibrationCam.[h,cc]:
      - included flags to indicate if Blind Pixel Method or PIn Diode 
        method was OK. Up to now, program stopped, if one of the two 
        methods was chosen but not able to being executed.
 
-   * manalysis/MArrivalTimeCalc.cc
-   * manalysis/MExtractSignals.cc
-   * manalysis/MGeomApply.cc
+   * manalysis/MArrivalTimeCalc.cc, manalysis/MExtractSignals.cc,
+     manalysis/MGeomApply.cc:
      - put all missing InitSize(npixels) into MGeomApply	 
 
 
+
  2004/01/28: Abelardo Moralejo
-
 
    * mcalib/MMcCalibration.cc
@@ -48,4 +47,17 @@
        a workaround for a 'bug' in very old camera files, which is not
        necessary anymore.
+
+   * manalysis/MCerPhotAnal2.[h,cc]:
+     - replaced MPedestalCam by MPedPhotCam
+     
+   * manalysis/MExtractSignal.cc:
+     - some small simplification to the signal extraction
+     - removed some obsolete variables
+     - replaced for by while
+     - removed obsolete casts
+     
+   * mmain/MEventDisplay.cc:
+     - gave names to the filters
+     - removed adding MHCamera to fList because it was deleted twice
 
 
Index: trunk/MagicSoft/Mars/manalysis/MCerPhotAnal2.cc
===================================================================
--- trunk/MagicSoft/Mars/manalysis/MCerPhotAnal2.cc	(revision 2945)
+++ trunk/MagicSoft/Mars/manalysis/MCerPhotAnal2.cc	(revision 2946)
@@ -31,5 +31,5 @@
 //
 //  Input Containers:
-//   MRawEvtData, MPedestalCam
+//   MRawEvtData, MPedPhotCam
 //
 //  Output Containers:
@@ -48,6 +48,6 @@
 #include "MRawEvtData.h"       // MRawEvtData::GetNumPixels
 #include "MCerPhotEvt.h"
-#include "MPedestalPix.h"
-#include "MPedestalCam.h"
+#include "MPedPhotPix.h"
+#include "MPedPhotCam.h"
 #include "MRawEvtPixelIter.h"
 
@@ -78,5 +78,5 @@
 //  - MRawRunHeader
 //  - MRawEvtData
-//  - MPedestalCam
+//  - MPedPhotCam
 //
 // The following output containers are also searched and created if
@@ -116,5 +116,5 @@
         }
 
-    fPedestals = (MPedestalCam*)pList->FindCreateObj("MPedestalCam");
+    fPedestals = (MPedPhotCam*)pList->FindCreateObj("MPedPhotCam");
     if (runheader && !fPedestals)
         return kFALSE;
Index: trunk/MagicSoft/Mars/manalysis/MCerPhotAnal2.h
===================================================================
--- trunk/MagicSoft/Mars/manalysis/MCerPhotAnal2.h	(revision 2945)
+++ trunk/MagicSoft/Mars/manalysis/MCerPhotAnal2.h	(revision 2946)
@@ -16,5 +16,5 @@
 
 class MRawEvtData;
-class MPedestalCam;
+class MPedPhotCam;
 class MCerPhotEvt;
 class MRawRunHeader;
@@ -23,5 +23,5 @@
 {
 private:
-    MPedestalCam  *fPedestals;  // Pedestals of all pixels in the camera
+    MPedPhotCam   *fPedestals;  // Pedestals of all pixels in the camera
     MRawEvtData   *fRawEvt;     // raw event data (time slices)
     MCerPhotEvt   *fCerPhotEvt; // Cerenkov Photon Event used for calculation
Index: trunk/MagicSoft/Mars/manalysis/MExtractSignal.cc
===================================================================
--- trunk/MagicSoft/Mars/manalysis/MExtractSignal.cc	(revision 2945)
+++ trunk/MagicSoft/Mars/manalysis/MExtractSignal.cc	(revision 2946)
@@ -102,5 +102,5 @@
     if (!fRawEvt)
     {
-      *fLog << err << AddSerialNumber("MRawEvtData") << " not found... aborting." << endl;
+        *fLog << err << AddSerialNumber("MRawEvtData") << " not found... aborting." << endl;
         return kFALSE;
     }
@@ -116,11 +116,12 @@
     fPedestals = (MPedestalCam*)pList->FindObject(AddSerialNumber("MPedestalCam"));
     if (!fPedestals)
-      {
+    {
         *fLog << err << AddSerialNumber("MPedestalCam") << " not found... aborting" << endl;
         return kFALSE;
-
-      }
+    }
 
     fArrivalTime = (MArrivalTime*)pList->FindCreateObj(AddSerialNumber("MArrivalTime"));
+    if (!fArrivalTime)
+        return kFALSE;
     
     return kTRUE;
@@ -135,5 +136,4 @@
 Bool_t MExtractSignal::ReInit(MParList *pList )
 {
-
     MGeomCam *cam = (MGeomCam*)pList->FindObject(AddSerialNumber("MGeomCam"));
     if (!cam)
@@ -143,7 +143,6 @@
     }
 
-  return kTRUE;
-}
-
+    return kTRUE;
+}
 
 // --------------------------------------------------------------------------
@@ -154,5 +153,4 @@
 Int_t MExtractSignal::Process()
 {
-
     MRawEvtPixelIter pixel(fRawEvt);
     fSignals->Clear();
@@ -165,74 +163,68 @@
         UShort_t satLo = 0;
 
-        Byte_t *ptr   = pixel.GetHiGainSamples();
-        Byte_t *first = ptr + fHiGainFirst;
-        Byte_t *last  = ptr + fHiGainFirst + fNumHiGainSamples;
-
-	UInt_t  sumHi   = 0;
-	UInt_t  sumLo   = 0;
+	UInt_t sumHi   = 0;
+	UInt_t sumLo   = 0;
+
+	Byte_t maxhi   = 0;
+	Byte_t midhi   = 0;
+
+        Byte_t *ptr  = pixel.GetHiGainSamples() + fHiGainFirst;
+        Byte_t *last = ptr + fNumHiGainSamples;
+
+	while (ptr<last)
+        {
+            sumHi += *ptr;
+
+            if (*ptr > maxhi)
+            {
+                maxhi = *ptr;
+                midhi = ptr-pixel.GetHiGainSamples();
+            }
+
+            if (*ptr >= fSaturationLimit)
+                satHi++;
+
+            ptr++;
+        }
+
+	ptr  = pixel.GetLoGainSamples() + fLoGainFirst;
+        last = ptr + fNumLoGainSamples;
+
+        Byte_t maxlo  = 0;
+	Byte_t midlo  = 0;
+
+	while (ptr<last)
+        {
+            sumLo += *ptr;
+
+            if (*ptr > maxlo)
+            {
+                maxlo = *ptr;
+                midlo = ptr-pixel.GetLoGainSamples();
+            }
+
+            if (*ptr >= fSaturationLimit)
+                satLo++;
+
+            ptr++;
+        }
+
+        if (satLo)
+            satlo++;
 
         const Int_t pixid = pixel.GetPixelId();
+
         const MPedestalPix  &ped = (*fPedestals)[pixid]; 
 	MExtractedSignalPix &pix = (*fSignals)[pixid];
 
-        const Float_t pedes   = ped.GetPedestal();
-        const Float_t pedrms  = ped.GetPedestalRms();
-
-	Byte_t maxhi  = 0;
-	Byte_t midhi  = 0;
-
-	for (ptr=first;ptr<last;ptr++)
-	  {
-	    
-	    if (*ptr > maxhi)
-	      {
-		maxhi = *ptr;
-		midhi = ptr-first;
-	      }
-
-	    sumHi += *ptr;
-	    
-	    if (*ptr >= fSaturationLimit)
-	      satHi++;
-
-	  }
-
-	ptr   = pixel.GetLoGainSamples();
-        first = ptr + fLoGainFirst;
-        last  = ptr + fLoGainFirst + fNumLoGainSamples;
-	Byte_t maxlo  = 0;
-	Byte_t midlo  = 0;
-
-	for (ptr=first;ptr<last;ptr++)
-	  {
-
-	    if (*ptr > maxlo)
-	      {
-		maxlo = *ptr;
-		midlo = ptr-first;
-	      }
-
-	    sumLo += *ptr;
-
-            if (*ptr >= fSaturationLimit)
-                satLo++;
-	  }
-
-        if (satLo)
-            satlo++;
-
-	pix.SetExtractedSignal((Float_t)sumHi - pedes*(Float_t)fNumHiGainSamples,
-			       pedrms*fSqrtHiGainSamples,
-                               (Float_t)sumLo - pedes*(Float_t)fNumLoGainSamples,
-                               pedrms*fSqrtLoGainSamples);
+        const Float_t pedes  = ped.GetPedestal();
+        const Float_t pedrms = ped.GetPedestalRms();
+
+	pix.SetExtractedSignal(sumHi - pedes*fNumHiGainSamples, pedrms*fSqrtHiGainSamples,
+                               sumLo - pedes*fNumLoGainSamples, pedrms*fSqrtLoGainSamples);
 
 	pix.SetGainSaturation(satHi, satHi, satLo);
 
-        if (satHi)
-          fArrivalTime->SetTime(pixid,(Float_t)(midlo+fLoGainFirst));
-        else
-          fArrivalTime->SetTime(pixid,(Float_t)(midhi+fHiGainFirst));
-
-
+        fArrivalTime->SetTime(pixid, satHi?midlo:midhi);
 
       } /* while (pixel.Next()) */
Index: trunk/MagicSoft/Mars/mmain/MEventDisplay.cc
===================================================================
--- trunk/MagicSoft/Mars/mmain/MEventDisplay.cc	(revision 2945)
+++ trunk/MagicSoft/Mars/mmain/MEventDisplay.cc	(revision 2946)
@@ -204,4 +204,6 @@
     MFilter *f1=new MFDataMember("MRawRunHeader.fRunType", '>', 255.5);
     MFilter *f2=new MFDataMember("MRawRunHeader.fRunType", '<', 255.5);
+    f1->SetName("MFMonteCarlo");
+    f2->SetName("MFRealData");
 
     ncalc->SetFilter(f1);
@@ -210,7 +212,7 @@
     tlist->AddToList(f1);
     tlist->AddToList(f2);
+    tlist->AddToList(ncalc);
     tlist->AddToList(pcopy);
     tlist->AddToList(pdnsb);
-    tlist->AddToList(ncalc);
     tlist->AddToList(nanal);
     tlist->AddToList(fill1);
@@ -228,5 +230,4 @@
     tlist->AddToList(fill8);
 
-
     //
     // Now distribute Display to all tasks
@@ -495,5 +496,4 @@
     cam->SetBit(TH1::kNoStats|MHCamera::kNoLegend|kCanDelete);
     cam->Draw("pixelindex");
-    fList->Add(cam);
 
     c1.Modified();
@@ -505,5 +505,4 @@
     cam->SetBit(TH1::kNoStats|MHCamera::kNoLegend|kCanDelete);
     cam->Draw("sectorindex");
-    fList->Add(cam);
 
     c2.Modified();
