Index: trunk/MagicSoft/Mars/macros/CT1EgyEst.C
===================================================================
--- trunk/MagicSoft/Mars/macros/CT1EgyEst.C	(revision 2268)
+++ trunk/MagicSoft/Mars/macros/CT1EgyEst.C	(revision 2272)
@@ -33,4 +33,5 @@
 #include "MHMatrix.h"
 #include "MEnergyEstParam.h"
+#include "MEnergyEstParamDanielMkn421.h"
 #include "MMatrixLoop.h"
 #include "MChisqEval.h"
@@ -138,5 +139,5 @@
   Optimize.SetOutFile(paramout);
 
-  /*
+  
   MFCT1SelFinal filterhadrons;
   filterhadrons.SetHadronnessName(hadronnessName);
@@ -144,5 +145,5 @@
   filterhadrons.SetInverted();
   Optimize.SetEventFilter(&filterhadrons);
-  */
+  
 
   Optimize.SetNevents(howMany);
@@ -205,9 +206,13 @@
   //
 
-  MEnergyEstParam eest2(hilName);
+  //MEnergyEstParam eest2(hilName);
+  //eest2.Add(hilSrcName);
+
+  //eest2.SetCoeffA(parA);
+  //eest2.SetCoeffB(parB);
+
+  // estimate energy using Daniel's parameters
+  MEnergyEstParamDanielMkn421 eest2(hilName);
   eest2.Add(hilSrcName);
-
-  eest2.SetCoeffA(parA);
-  eest2.SetCoeffB(parB);
 
 
@@ -238,6 +243,5 @@
   // Select events
   //
-
-  /*
+  
   cout << "Select events with hadronness < " << maxhadronness 
 	<< " and |alpha| < " << maxalpha << endl; 
@@ -247,30 +251,13 @@
 
   MContinue cont(&hcut2);
-  */
-
-  parlist2.AddToList(&tlist2);
-
-  //********************************
-  // Entries in MTaskList
-
-  tlist2.AddToList(&read2);
-  //  tlist2.AddToList(&cont);
-  tlist2.AddToList(&eest2);
-
-  //
+  
+  //-----------------------------------------------
   // Create Object MHMcEnergyMigration containing useful histograms,
   // and task MHMcEnergyMigration to fill them:
   //
 
-  MHMcEnergyMigration mighist;
-
-  parlist2.AddToList(&mighist);
-
-  MFillH migfill(&mighist, "MMcEvt");
-
-  tlist2.AddToList(&migfill);
-
-  parlist2.AddToList(binsE);
-  parlist2.AddToList(binsTheta);
+  //MHMcEnergyMigration mighist;
+
+  MFillH migfill("MHMcEnergyMigration", "MMcEvt");
 
   MBinning BinningDE("BinningDE");
@@ -279,7 +266,24 @@
   BinningDE.SetEdges(60, -1.2, 1.2);
   BinningImpact.SetEdges(50, 0., 400.);
+
+  //********************************
+  // Entries in MParList
+
+  parlist2.AddToList(&tlist2);
+  //parlist2.AddToList(&mighist);
+  parlist2.AddToList(binsE);
+  parlist2.AddToList(binsTheta);
   parlist2.AddToList(&BinningDE);
   parlist2.AddToList(&BinningImpact);
 
+  //********************************
+  // Entries in MTaskList
+
+  tlist2.AddToList(&read2);
+  tlist2.AddToList(&cont);
+  tlist2.AddToList(&eest2);
+  tlist2.AddToList(&migfill);
+
+  //-----------------------------------------------
   cout << "Event loop was setup" << endl; 
   MProgressBar bar;
@@ -291,4 +295,15 @@
   if (!evtloop2.Eventloop())
     return;
+
+  tlist2.PrintStatistics(0, kTRUE);
+
+  MHMcEnergyMigration &mighist = 
+    *(MHMcEnergyMigration*)parlist2->FindObject("MHMcEnergyMigration");
+  if (!&mighist)
+  {
+    cout << "CT1EgyEst.C : object 'MHMcEnergyMigration' not found ... aborting"
+         << endl;
+    return;
+  }
 
   TString paramout(outPath);
