diff liboctave/CNDArray.cc @ 4915:c638c144d4da

[project @ 2004-07-23 19:01:22 by jwe]
author jwe
date Fri, 23 Jul 2004 19:01:23 +0000
parents bd043a433918
children 954cc2ba6a49
line wrap: on
line diff
--- a/liboctave/CNDArray.cc	Fri Jul 23 16:55:13 2004 +0000
+++ b/liboctave/CNDArray.cc	Fri Jul 23 19:01:23 2004 +0000
@@ -653,10 +653,33 @@
   MX_ND_COMPLEX_OP_REDUCTION (+= elem (iter_idx), Complex (0, 0));
 }
 
-int
-ComplexNDArray::cat (const ComplexNDArray& ra_arg, int dim, int iidx, int move)
+ComplexNDArray
+concat (const ComplexNDArray& ra, const ComplexNDArray& rb, 
+	const Array<int>& ra_idx)
+{
+  ComplexNDArray retval (ra);
+  if (ra.numel () > 0)
+    retval.insert (rb, ra_idx);
+  return retval;
+}
+
+ComplexNDArray
+concat (const ComplexNDArray& ra, const NDArray& rb, const Array<int>& ra_idx)
 {
-  return ::cat_ra(*this, ra_arg, dim, iidx, move);
+  ComplexNDArray retval (ra);
+  ComplexNDArray tmp (rb);
+  if (ra.numel () > 0)
+    retval.insert (tmp, ra_idx);
+  return retval;
+}
+
+ComplexNDArray
+concat (const NDArray& ra, const ComplexNDArray& rb, const Array<int>& ra_idx)
+{
+  ComplexNDArray retval (ra);
+  if (ra.numel () > 0)
+    retval.insert (rb, ra_idx);
+  return retval;
 }
 
 static const Complex Complex_NaN_result (octave_NaN, octave_NaN);
@@ -915,6 +938,13 @@
   return *this;
 }
 
+ComplexNDArray&
+ComplexNDArray::insert (const ComplexNDArray& a, const Array<int>& ra_idx)
+{
+  Array<Complex>::insert (a, ra_idx);
+  return *this;
+}
+
 ComplexMatrix
 ComplexNDArray::matrix_value (void) const
 {