Index: trunk/MagicSoft/Mars/Changelog
===================================================================
--- trunk/MagicSoft/Mars/Changelog	(revision 4954)
+++ trunk/MagicSoft/Mars/Changelog	(revision 4955)
@@ -19,4 +19,19 @@
 
                                                  -*-*- END OF LINE -*-*-
+
+ 2004/09/11: Markus Gaug
+ 
+   * mbase/MArray.[h,cc]
+     - moved function StripZeros(TArrayD &arr) to MArrayD
+     - moved function StripZeros(TArrayF &arr) to MArrayF
+
+   * mbase/MArrayD.[h,cc]
+     - new function StripZeros() 
+
+   * mbase/MArrayF.[h,cc]
+   * mbase/Makefile
+   * mbase/BaseLinkDef.h
+     - new class analogously to MArrayD
+
 
  2004/09/10: Markus Gaug
Index: trunk/MagicSoft/Mars/mbase/MArray.cc
===================================================================
--- trunk/MagicSoft/Mars/mbase/MArray.cc	(revision 4954)
+++ trunk/MagicSoft/Mars/mbase/MArray.cc	(revision 4955)
@@ -37,39 +37,5 @@
 //////////////////////////////////////////////////////////////////////////////
 #include "MArray.h"
-#include "TArray.h"
 
 ClassImp(MArray);
 
-// --------------------------------------------------------------------------
-//
-//  Cuts the last entries of an array containing only zeros.
-//
-void MArray::StripZeros(TArray &arr)
-{
-
-  const Int_t n = arr.GetSize();
-  
-  for (Int_t i=n-1; i>=0; i--)
-    if (arr[i] != 0)
-        {
-          arr.Set(i+1);
-          break;
-        }
-}
-
-// --------------------------------------------------------------------------
-//
-//  Cuts the last entries of an array containing only zeros.
-//
-void MArray::StripZeros(MArray &arr)
-{
-    const Int_t n = arr.GetSize();
-
-    for (Int_t i=n-1; i>=0; i--)
-      if (arr[i] != 0)
-        {
-          arr.Set(i+1);
-          break;
-        }
-}
-
Index: trunk/MagicSoft/Mars/mbase/MArray.h
===================================================================
--- trunk/MagicSoft/Mars/mbase/MArray.h	(revision 4954)
+++ trunk/MagicSoft/Mars/mbase/MArray.h	(revision 4955)
@@ -14,5 +14,4 @@
 #endif
 
-class TArray;
 class MArray : public TObject
 {
@@ -31,7 +30,4 @@
    virtual void Set(UInt_t n) = 0;
    
-   static void  StripZeros(TArray &arr);
-   static void  StripZeros(MArray &arr);
-
    ClassDef(MArray, 1)  //Abstract array base class for TObject derived Arrays
 };
Index: trunk/MagicSoft/Mars/mbase/MArrayD.cc
===================================================================
--- trunk/MagicSoft/Mars/mbase/MArrayD.cc	(revision 4954)
+++ trunk/MagicSoft/Mars/mbase/MArrayD.cc	(revision 4955)
@@ -35,5 +35,39 @@
 //////////////////////////////////////////////////////////////////////////////
 #include "MArrayD.h"
+#include "TArrayD.h"
 
 ClassImp(MArrayD);
 
+// --------------------------------------------------------------------------
+//
+//  Cuts the last entries of an array containing only zeros.
+//
+void MArrayD::StripZeros(TArrayD &arr)
+{
+
+  const Int_t n = arr.GetSize();
+  
+  for (Int_t i=n-1; i>=0; i--)
+    if (arr[i] != 0)
+        {
+          arr.Set(i+1);
+          break;
+        }
+}
+
+// --------------------------------------------------------------------------
+//
+//  Cuts the last entries of an array containing only zeros.
+//
+void MArrayD::StripZeros()
+{
+    const Int_t n = GetSize();
+
+    for (Int_t i=n-1; i>=0; i--)
+      if ((*this)[i] != 0)
+        {
+          Set(i+1);
+          break;
+        }
+}
+
Index: trunk/MagicSoft/Mars/mbase/MArrayD.h
===================================================================
--- trunk/MagicSoft/Mars/mbase/MArrayD.h	(revision 4954)
+++ trunk/MagicSoft/Mars/mbase/MArrayD.h	(revision 4955)
@@ -8,4 +8,5 @@
 #include <string.h>
 
+class TArrayD;
 class MArrayD : public MArray
 {
@@ -156,4 +157,7 @@
     }
 
+    static void  StripZeros(TArrayD &arr);
+    void  StripZeros();
+
     ClassDef(MArrayD, 1)  //Array of Double_t
 };
Index: trunk/MagicSoft/Mars/mbase/MArrayF.cc
===================================================================
--- trunk/MagicSoft/Mars/mbase/MArrayF.cc	(revision 4954)
+++ trunk/MagicSoft/Mars/mbase/MArrayF.cc	(revision 4955)
@@ -35,5 +35,39 @@
 //////////////////////////////////////////////////////////////////////////////
 #include "MArrayF.h"
+#include "TArrayF.h"
 
 ClassImp(MArrayF);
 
+// --------------------------------------------------------------------------
+//
+//  Cuts the last entries of an array containing only zeros.
+//
+void MArrayF::StripZeros(TArrayF &arr)
+{
+
+  const Int_t n = arr.GetSize();
+  
+  for (Int_t i=n-1; i>=0; i--)
+    if (arr[i] != 0)
+        {
+          arr.Set(i+1);
+          break;
+        }
+}
+
+// --------------------------------------------------------------------------
+//
+//  Cuts the last entries of an array containing only zeros.
+//
+void MArrayF::StripZeros()
+{
+    const Int_t n = GetSize();
+
+    for (Int_t i=n-1; i>=0; i--)
+      if ((*this)[i] != 0)
+        {
+          Set(i+1);
+          break;
+        }
+}
+
Index: trunk/MagicSoft/Mars/mbase/MArrayF.h
===================================================================
--- trunk/MagicSoft/Mars/mbase/MArrayF.h	(revision 4954)
+++ trunk/MagicSoft/Mars/mbase/MArrayF.h	(revision 4955)
@@ -8,4 +8,5 @@
 #include <string.h>
 
+class TArrayF;
 class MArrayF : public MArray
 {
@@ -156,4 +157,7 @@
     }
 
+    static void  StripZeros(TArrayF &arr);
+    void  StripZeros();
+
     ClassDef(MArrayF, 1)  //Array of Float_t
 };
