Index: trunk/MagicSoft/Mars/macros/MagicHillas.C
===================================================================
--- trunk/MagicSoft/Mars/macros/MagicHillas.C	(revision 1443)
+++ trunk/MagicSoft/Mars/macros/MagicHillas.C	(revision 1463)
@@ -16,7 +16,7 @@
 !
 !
-!   Author(s): Thomas Bretz  12/2000 (tbretz@uni-sw.gwdg.de)
+!   Author(s): Thomas Bretz et al,  12/2000 <mailto:tbretz@astro.uni-wuerzburg.de>
 !
-!   Copyright: MAGIC Software Development, 2000-2001
+!   Copyright: MAGIC Software Development, 2000-2002
 !
 !
@@ -24,9 +24,10 @@
 
 
-void MagicHillas(const char *filename="~/data/gamma*.root")
+void MagicHillas(const char *filename="~/data/Gamma*.root")
 {
     //
     // This is a demonstration program which calculates the Hillas
-    // parameter out of a Magic root file.
+    // parameter out of a Magic root file (raw data file).
+    //
 
     //
@@ -43,6 +44,8 @@
     // of MHillas
     //
-    //MHillasExt hext;
-    //plist.AddToList(&hext);
+    /*
+     MHillasExt hext;
+     plist.AddToList(&hext);
+     */
 
     //
@@ -54,22 +57,32 @@
 
     //
-    // Setup binning for your histograms.
+    // Use this if you want to change the binning of one of
+    // the histograms
     //
-    MBinning binswidth("BinningWidth");
-    binswidth.SetEdges(100, 0, 1);   // 100 bins from 0 to 1 deg
+    /*
+     MBinning binswidth("BinningWidth");
+     binswidth.SetEdges(100, 0, 0.1);     // 100 bins from 0 to 1 deg
+     plist.AddToList(&binswidth);
 
-    MBinning binslength("BinningLength");
-    binslength.SetEdges(100, 0, 1);  // 100 bins from 0 to 1 deg
+     MBinning binslength("BinningLength");
+     binslength.SetEdges(100, 0, 1);      // 100 bins from 0 to 1 deg
+     plist.AddToList(&binslength);
 
-    MBinning binsalpha("BinningAlpha");
-    binsalpha.SetEdges(90, 0, 90);   // 90 bins from 0 to 90 deg
+     MBinning binsdist("BinningDist");
+     binsdist.SetEdges(100, 0, 1.5);      // 100 bins from 0 to 1 deg
+     plist.AddToList(&binsdist);
 
-    MBinning binsdist("BinningDist");
-    binsdist.SetEdges(100, 0, 2);    // 100 bins from 0 to 2 deg
+     MBinning binsht("BinningHeadTail");
+     binsht.SetEdges(100, -1.5, 1.5);     // 100 bins from 0 to 1 deg
+     plist.AddToList(&binsht);
 
-    plist.AddToList(&binswidth);
-    plist.AddToList(&binslength);
-    plist.AddToList(&binsalpha);
-    plist.AddToList(&binsdist);
+     MBinning binsalpha("BinningAlpha");
+     binsalpha.SetEdges(90, 0, 90);       // 90 bins from 0 to 90 deg
+     plist.AddToList(&binsalpha);
+
+     MBinning binscam("BinningCamera");
+     binscam.SetEdges(50, -1.5, 1.5);     //  20 bins from -2 to 2 deg
+     plist.AddToList(&binscam);
+    */
 
     //
@@ -101,12 +114,15 @@
     MMcPedestalCopy   pcopy;
     MMcPedestalNSBAdd pnsb;
+
     MCerPhotCalc      ncalc;
-
-//  Alternative photon calculation:
-//    MCerPhotCalc2     ncalc;
-//  Example: use only 2nd to 6th FADC slices for photon calculation:
-//    const Float_t x[15]={0., 1., 1., 1., 1., 1., 0.,0.,0.,0.,0.,0.,0.,0.,0.};
-//    TArrayF w(15,x);
-//    ncalc.SetWeights(w);
+    //
+    //  Alternative photon calculation:
+    //  Example: use only 2nd to 6th FADC slices for photon calculation:
+    //
+    //    MCerPhotCalc2 ncalc;
+    //    const Float_t x[15]={0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0};
+    //    TArrayF w(15,x);
+    //    ncalc.SetWeights(w);
+    //
 
     MImgCleanStd      clean;
@@ -121,12 +137,12 @@
     MFillH hfill2a("HistAntiSrc [MHHillasSrc]", "HillasAntiSrc");
 
+    MWriteRootFile write("hillas.root");
+    write.AddContainer("MHillas",       "Hillas");
+    write.AddContainer("HillasSource",  "Hillas");
+    write.AddContainer("HillasAntiSrc", "Hillas");
+    write.AddContainer("MHStarMap");
+    write.AddContainer("MMcEvt","Hillas");
+
     /*
-     MWriteRootFile write("hillas.root");
-     write.AddContainer("MHillas",       "Hillas");
-     write.AddContainer("HillasSource",  "Hillas");
-     write.AddContainer("HillasAntiSrc", "Hillas");
-     write.AddContainer("MMcEvt",        "Hillas");
-     write.AddContainer("MHStarMap");
-
      MWriteAsciiFile write("hillas.txt");
      write.AddColumn("MHillas.fLength*MGeomCam.fConvMm2Deg");
@@ -143,4 +159,5 @@
     tlist.AddToList(&hcalc);
     tlist.AddToList(&csrc1);
+
     tlist.AddToList(&csrc2);
     tlist.AddToList(&hfill);
@@ -148,4 +165,5 @@
     tlist.AddToList(&hfill2s);
     tlist.AddToList(&hfill2a);
+    tlist.AddToList(&write);
 
     //
@@ -165,8 +183,9 @@
     //
     // After the analysis is finished we can display the histograms
-
+    //
+    plist.FindObject("HistSource")->DrawClone();
     plist.FindObject("MHHillas")->DrawClone();
-    plist.FindObject("HistSource")->DrawClone();
     plist.FindObject("HistAntiSrc")->DrawClone();
     plist.FindObject("MHStarMap")->DrawClone();
 }
+
