Index: trunk/MagicSoft/Mars/Changelog
===================================================================
--- trunk/MagicSoft/Mars/Changelog	(revision 1492)
+++ trunk/MagicSoft/Mars/Changelog	(revision 1493)
@@ -1,3 +1,28 @@
                                                                   -*-*- END -*-*-
+
+ 2002/08/09: Thomas Bretz
+
+   * mbase/MIter.[h,cc]:
+     - added
+
+   * mbase/BaseLinkDef.h, mbase/Makefile:
+     - added MIter
+
+   * mdata/MDataChain.cc:
+     - added sanity check in StreamPrimitive
+
+   * mfilter/MF.[h,cc]:
+     - fixed StreamPrimitive
+     - don'w stream standard name and title.
+     - added default constructor
+
+   * mfilter/MFDataMeber.cc:
+     - strip spces from value before returning GetRule
+
+   * mfilter/MFilterList.[h,cc]:
+     - fixed StreamPrimitive
+     - don'w stream standard name and title.
+
+
 
  2002/08/08: Thomas Bretz
@@ -42,4 +67,8 @@
      - changed layout of plots
      - changed name and title of MakeDefCanvas
+     - made independant of MHillas
+     - exchanged the usage of the Fill-argument (MHillasExt) and the
+       stored pointer (MHillasSrc)
+     - changed the default binning of asym to be symmetric
 
    * mbase/MTask.cc:
@@ -51,4 +80,11 @@
    * macros/dohtml.C:
      - added starplot.C
+
+   * macros/MagicHillas.C, macros/CT1Hillas.C:
+     - changed to use new stylish Hillas Histograms
+
+   * macros/star.C:
+     - changed to interpolate pixels around hot spots
+     - write Sourcs and AntoSource to RunHeaders
 
 
Index: trunk/MagicSoft/Mars/mdata/MDataChain.cc
===================================================================
--- trunk/MagicSoft/Mars/mdata/MDataChain.cc	(revision 1492)
+++ trunk/MagicSoft/Mars/mdata/MDataChain.cc	(revision 1493)
@@ -490,4 +490,7 @@
 TString MDataChain::GetRule() const
 {
+    if (!fMember)
+        return "<n/a>";
+
     TString str;
 
Index: trunk/MagicSoft/Mars/mfilter/MF.cc
===================================================================
--- trunk/MagicSoft/Mars/mfilter/MF.cc	(revision 1492)
+++ trunk/MagicSoft/Mars/mfilter/MF.cc	(revision 1493)
@@ -87,4 +87,17 @@
 ClassImp(MF);
 
+static const TString gsDefName  = "MF";
+static const TString gsDefTitle = "Filter setup by a text-rule";
+
+// --------------------------------------------------------------------------
+//
+// Default Constructor. Don't use.
+//
+MF::MF() : fFilter(NULL)
+{
+    fName  = gsDefName.Data();
+    fTitle = gsDefTitle.Data();
+}
+
 // --------------------------------------------------------------------------
 //
@@ -94,6 +107,6 @@
 MF::MF(const char *text, const char *name, const char *title)
 {
-    fName  = name  ? name  : "MF";
-    fTitle = title ? title : "Filter using a text";
+    fName  = name  ? name  : gsDefName.Data();
+    fTitle = title ? title : gsDefTitle.Data();
 
     *fLog << inf << "Trying to resolve filter rule..." << endl;
@@ -372,5 +385,21 @@
 void MF::StreamPrimitive(ofstream &out) const
 {
-    out << "   MF " << GetUniqueName() << "";
-}
-
+    out << "   MF " << GetUniqueName();
+
+    if (!fFilter)
+    {
+        out << ";" << endl;
+        return;
+    }
+
+    out << "(\"" << fFilter->GetRule() << "\"";
+        if (fName!=gsDefName || fTitle!=gsDefTitle)
+    {
+        out << "(\"" << fName << "\"";
+        if (fTitle!=gsDefTitle)
+            out << ", \"" << fTitle << "\"";
+    }
+    out << ");" << endl;
+
+}
+
Index: trunk/MagicSoft/Mars/mfilter/MF.h
===================================================================
--- trunk/MagicSoft/Mars/mfilter/MF.h	(revision 1492)
+++ trunk/MagicSoft/Mars/mfilter/MF.h	(revision 1493)
@@ -27,4 +27,5 @@
 
 public:
+    MF();
     MF(const char *text, const char *name=NULL, const char *title=NULL);
     ~MF();
Index: trunk/MagicSoft/Mars/mfilter/MFDataMember.cc
===================================================================
--- trunk/MagicSoft/Mars/mfilter/MFDataMember.cc	(revision 1492)
+++ trunk/MagicSoft/Mars/mfilter/MFDataMember.cc	(revision 1493)
@@ -113,6 +113,9 @@
     TString ret = fData.GetRule();
     ret += fFilterType==kELowerThan?"<":">";
-    ret += fValue;
-    return ret;
+
+    TString str;
+    str += fValue;
+
+    return ret+str.Strip(TString::kBoth);
 }
 
Index: trunk/MagicSoft/Mars/mfilter/MFilterList.cc
===================================================================
--- trunk/MagicSoft/Mars/mfilter/MFilterList.cc	(revision 1492)
+++ trunk/MagicSoft/Mars/mfilter/MFilterList.cc	(revision 1493)
@@ -28,5 +28,4 @@
 //                                                                         //
 /////////////////////////////////////////////////////////////////////////////
-
 #include "MFilterList.h"
 
@@ -38,5 +37,10 @@
 #include "MLogManip.h"
 
+#include "MIter.h"
+
 ClassImp(MFilterList);
+
+static const TString gsDefName  = "MFilterList";
+static const TString gsDefTitle = "List combining filters logically.";
 
 // --------------------------------------------------------------------------
@@ -57,6 +61,6 @@
 MFilterList::MFilterList(const char *type, const char *name, const char *title)
 {
-    fName  = name  ? name  : "MFilterList";
-    fTitle = title ? title : "List combining filters logically.";
+    fName  = name  ? name  : gsDefName.Data();
+    fTitle = title ? title : gsDefTitle.Data();
 
     fFilterType = kEAnd;
@@ -277,9 +281,17 @@
     }
 
-    out << fName << "\", \"" << fName << "\", \"" << fTitle << "\");" << endl << endl;
-
-    TIter Next(&fFilters);
-
-    TObject *cont = NULL;
+    out << "\"";
+
+    if (fName!=gsDefName || fTitle!=gsDefTitle)
+    {
+        out << ", \"" << fName << "\"";
+        if (fTitle!=gsDefTitle)
+            out << ", \"" << fTitle << "\"";
+    }
+    out << ");" << endl << endl;
+
+    MIter Next(&fFilters);
+
+    MParContainer *cont = NULL;
     while ((cont=Next()))
     {
@@ -287,5 +299,5 @@
 
         out << "   " << ToLower(fName) << ".AddToList(&";
-        out << ToLower(cont->GetName()) << ");" << endl << endl;
+        out << cont->GetUniqueName() << ");" << endl << endl;
     }
 }
