Index: /trunk/MagicSoft/Mars/manalysis/MMcTriggerLvl2.cc
===================================================================
--- /trunk/MagicSoft/Mars/manalysis/MMcTriggerLvl2.cc	(revision 2209)
+++ /trunk/MagicSoft/Mars/manalysis/MMcTriggerLvl2.cc	(revision 2210)
@@ -48,5 +48,5 @@
 #include "MGeomPix.h"
 #include "MGeomCamMagic.h"
-#include "MCamDisplay.h"
+#include "MHCamera.h"
 
 #include "MMcTrig.hxx"
@@ -283,5 +283,5 @@
 
   //
-  // Use MCamDisplay class variable for avoiding to create a MCamDisplay each 
+  // Use MHCamera class variable for avoiding to create a MHCamera each 
   // time this function is called. Also, now all the hexagons are drawn in 
   // the same camera pad
@@ -291,5 +291,5 @@
   if (!fCam)
     {
-      fCam = new MCamDisplay(fGeomCam);
+      fCam = new MHCamera(*fGeomCam);
       fCam->Draw();
       fCam->DrawPixelNumbers();
@@ -325,5 +325,5 @@
 {
   //
-  // Use MCamDisplay class variable for avoiding to create a MCamDisplay each 
+  // Use MHCamera class variable for avoiding to create a MHCamera each 
   // time this function is called. Also, now all the hexagons are drawn in 
   // the same camera pad
@@ -335,5 +335,5 @@
   if (!fCam)
     {
-      fCam = new MCamDisplay(fGeomCam);
+      fCam = new MHCamera(*fGeomCam);
       fCam->Draw();  
       fCam->DrawPixelNumbers();
Index: /trunk/MagicSoft/Mars/manalysis/MMcTriggerLvl2.h
===================================================================
--- /trunk/MagicSoft/Mars/manalysis/MMcTriggerLvl2.h	(revision 2209)
+++ /trunk/MagicSoft/Mars/manalysis/MMcTriggerLvl2.h	(revision 2210)
@@ -8,5 +8,5 @@
 class MMcTrig;
 
-class MCamDisplay;
+class MHCamera;
 class MGeomCamMagic;
 
@@ -38,5 +38,5 @@
   MMcTrig *fMcTrig;
   MGeomCam *fGeomCam;  
-  MCamDisplay *fCam;
+  MHCamera *fCam;
   //  MCluster *fClust;
 
Index: /trunk/MagicSoft/Mars/mbase/MParList.cc
===================================================================
--- /trunk/MagicSoft/Mars/mbase/MParList.cc	(revision 2209)
+++ /trunk/MagicSoft/Mars/mbase/MParList.cc	(revision 2210)
@@ -75,4 +75,9 @@
     fContainer  = new TOrdCollection;
     fAutodelete = new TOrdCollection;
+
+    gROOT->GetListOfCleanups()->Add(fContainer);
+    gROOT->GetListOfCleanups()->Add(fAutodelete);
+    fContainer->SetBit(kMustCleanup);
+    fAutodelete->SetBit(kMustCleanup);
 }
 
@@ -111,4 +116,10 @@
     IsOwner() ? fContainer->SetOwner() : fAutodelete->SetOwner();
 
+    TIter Next(fContainer);
+    TObject *o;
+    while (o=Next())
+        if (o->TestBit(kCanDelete))
+            delete fContainer->Remove(o);
+
     // FIXME? If fContainer is owner do we have to remove the object
     //   from fAutodelete due to the acces when checking for a
@@ -206,4 +217,5 @@
     *fLog << inf << "Adding " << name << " to " << GetName() << "... " << flush;
 
+    cont->SetBit(kMustCleanup);
     fContainer->Add(cont);
     *fLog << "Done." << endl;
@@ -228,5 +240,8 @@
     MParContainer *cont = NULL;
     while ((cont=Next()))
+    {
+        cont->SetBit(kMustCleanup);
         AddToList(cont);
+    }
 }
 
Index: /trunk/MagicSoft/Mars/meventdisp/MGCamDisplay.cc
===================================================================
--- /trunk/MagicSoft/Mars/meventdisp/MGCamDisplay.cc	(revision 2209)
+++ /trunk/MagicSoft/Mars/meventdisp/MGCamDisplay.cc	(revision 2210)
@@ -36,9 +36,9 @@
 #include "MEvtLoop.h"            // MEvtLoop::GetParList
 #include "MTaskList.h"           // MTaskList::AddToList
-#include "MCamDisplay.h"         // MCamDisplay
+#include "MHCamera.h"         // MHCamera
 #include "MHillasCalc.h"         // MHillasCalc
 #include "MHillasSrcCalc.h"      // MHillasSrcCalc
 #include "MPedestalCam.h"        // MPedestalCam
-#include "MCerPhotCalc.h"        // MCerPhotCalc
+#include "MCerPhotAnal2.h"       // MCerPhotAnal
 #include "MMcPedestalCopy.h"     // MMcPedestalCopy
 #include "MMcPedestalNSBAdd.h"   // MMcPedestalNSBAdd
@@ -120,5 +120,5 @@
     MMcPedestalCopy   *pcopy = new MMcPedestalCopy;
     MMcPedestalNSBAdd *pdnsb = new MMcPedestalNSBAdd;
-    MCerPhotCalc      *ncalc = new MCerPhotCalc;
+    MCerPhotAnal2     *ncalc = new MCerPhotAnal2;
     MClone            *clone = new MClone("MCerPhotEvt");
     MImgCleanStd      *clean = new MImgCleanStd;
@@ -177,5 +177,5 @@
     {
         fCanvas2[i]->cd();
-        fDisplay[i]  = new MCamDisplay(geom);
+        fDisplay[i]  = new MHCamera(*geom);
         fDisplay[i]->Draw();
         fDisplay[i]->AddNotify(*(MCamEvent*)GetParList()->FindObject("MRawEvtData"));
@@ -249,9 +249,9 @@
     const MPedestalCam *ped   = (MPedestalCam*)plist->FindObject("MPedestalCam");
 
-    fDisplay[0]->Fill((MCamEvent&)*evt, 0);
-    fDisplay[1]->Fill((MCamEvent&)*evt, 1);
-    fDisplay[2]->Fill((MCamEvent&)*evt, 2);
+    fDisplay[0]->SetCamContent((MCamEvent&)*evt, 0);
+    fDisplay[1]->SetCamContent((MCamEvent&)*evt, 1);
+    fDisplay[2]->SetCamContent((MCamEvent&)*evt, 2);
     fDisplay[3]->FillLevels(*evt, *clean);
-    fDisplay[4]->Fill((MCamEvent&)*ped);
+    fDisplay[4]->SetCamContent((MCamEvent&)*ped);
 
     for (int i=0; i<5; i++)
Index: /trunk/MagicSoft/Mars/meventdisp/MGCamDisplay.h
===================================================================
--- /trunk/MagicSoft/Mars/meventdisp/MGCamDisplay.h	(revision 2209)
+++ /trunk/MagicSoft/Mars/meventdisp/MGCamDisplay.h	(revision 2210)
@@ -9,5 +9,5 @@
 
 class MGeomCam;
-class MCamDisplay;
+class MHCamera;
 
 class MGCamDisplay : public MGEvtDisplay
@@ -19,5 +19,5 @@
     TGListBox   *fPixelList;
 
-    MCamDisplay *fDisplay[5];
+    MHCamera *fDisplay[5];
     TCanvas     *fCanvas2[5];
 
Index: /trunk/MagicSoft/Mars/meventdisp/MGEvtDisplay.cc
===================================================================
--- /trunk/MagicSoft/Mars/meventdisp/MGEvtDisplay.cc	(revision 2209)
+++ /trunk/MagicSoft/Mars/meventdisp/MGEvtDisplay.cc	(revision 2210)
@@ -46,5 +46,5 @@
 #include "MTaskList.h"
 #include "MEvtLoop.h"
-#include "MCamDisplay.h"
+#include "MHCamera.h"
 #include "MReadMarsFile.h"
 #include "MGeomCamMagic.h"
@@ -279,5 +279,5 @@
     AddTab("Geometry");
     MGeomCamMagic geom;
-    MCamDisplay *display = new MCamDisplay(&geom);
+    MHCamera *display = new MHCamera(geom);
     display->Draw();
     display->DrawPixelNumbers();
@@ -648,5 +648,4 @@
         {
         case kTE_ENTER:
-        case kCM_BUTTON:
             if (parm1==kClose)
             {
@@ -664,17 +663,4 @@
                     ReadinEvent();
                 return kTRUE;
-
-            case kCM_BUTTON:
-                switch (parm1)
-                {
-                case kEvtPrev:
-                    ReadinEvent(-1);
-                    return kTRUE;
-
-                case kEvtNext:
-                    ReadinEvent(+1);
-                    return kTRUE;
-                }
-                return kTRUE;
             }
             return kTRUE;
@@ -685,4 +671,26 @@
         switch (GET_SUBMSG(msg))
         {
+        case kCM_BUTTON:
+            if (parm1==kClose)
+            {
+                CloseWindow();
+                return kTRUE;
+            }
+
+            if (!fInitOk)
+                return kTRUE;
+
+            switch (parm1)
+            {
+            case kEvtPrev:
+                ReadinEvent(-1);
+                return kTRUE;
+
+            case kEvtNext:
+                ReadinEvent(+1);
+                return kTRUE;
+            }
+            return kTRUE;
+
         case kCM_MENU:
             switch (parm1)
Index: /trunk/MagicSoft/Mars/mgui/GuiLinkDef.h
===================================================================
--- /trunk/MagicSoft/Mars/mgui/GuiLinkDef.h	(revision 2209)
+++ /trunk/MagicSoft/Mars/mgui/GuiLinkDef.h	(revision 2210)
@@ -7,5 +7,4 @@
 #pragma link C++ class MHexagon+;
 #pragma link C++ class MCamEvent+;
-#pragma link C++ class MCamDisplay+;
 
 #endif
Index: /trunk/MagicSoft/Mars/mgui/Makefile
===================================================================
--- /trunk/MagicSoft/Mars/mgui/Makefile	(revision 2209)
+++ /trunk/MagicSoft/Mars/mgui/Makefile	(revision 2210)
@@ -30,7 +30,6 @@
 
 SRCFILES = MHexagon.cc \
-	   MCamEvent.cc \
-           MCamDisplay.cc
-
+	   MCamEvent.cc
+           
 SRCS    = $(SRCFILES)
 HEADERS = $(SRCFILES:.cc=.h)
Index: /trunk/MagicSoft/Mars/mhist/HistLinkDef.h
===================================================================
--- /trunk/MagicSoft/Mars/mhist/HistLinkDef.h	(revision 2209)
+++ /trunk/MagicSoft/Mars/mhist/HistLinkDef.h	(revision 2210)
@@ -19,6 +19,6 @@
 #pragma link C++ class MHFadcPix+;
 
-#pragma link C++ class MHCerPhotEvt+;
-#pragma link C++ class MHCurrents+;
+#pragma link C++ class MHCamEvent+;
+#pragma link C++ class MHTriggerLvl0+;
 
 #pragma link C++ class MHBlindPixels+;
@@ -42,7 +42,8 @@
 #pragma link C++ class MHCompProb+;
 #pragma link C++ class MHHadronness+;    
-#pragma link C++ class MHTrigLvl0+;                                
 
-#pragma link C++ class MHOnSubtraction+;
+#pragma link C++ class MHCamera+;
+//#pragma link C++ class MHCurrents+;
+//#pragma link C++ class MHOnSubtraction+;
 
 #endif
Index: /trunk/MagicSoft/Mars/mhist/Makefile
===================================================================
--- /trunk/MagicSoft/Mars/mhist/Makefile	(revision 2209)
+++ /trunk/MagicSoft/Mars/mhist/Makefile	(revision 2210)
@@ -24,5 +24,5 @@
 INCLUDES = -I. -I../mbase -I../mraw -I../manalysis \
 	   -I../mgui -I../mgeom -I../mdata -I../mfilter -I../mimage \
-           -I../mmain -I../mmc
+           -I../mmain -I../mmc -I../mreflector
 
 #------------------------------------------------------------------------------
@@ -36,6 +36,5 @@
            MWeight.cc \
            MH3.cc \
-           MHCerPhotEvt.cc \
-           MHCurrents.cc \
+           MHCamEvent.cc \
            MHMatrix.cc \
            MHFadcPix.cc \
@@ -59,5 +58,7 @@
 	   MHSigmabarTheta.cc \
 	   MHSigmaTheta.cc \
-	   MHTrigLvl0.cc
+	   MHTriggerLvl0.cc \
+           MHCamera.cc
+#           MHCurrents.cc \
 #	   MHOnSubtraction.cc \
 
