[med-svn] [Git][med-team/libsis-base-java][upstream] New upstream version 18.09~pre1+git20180928.45fbd31+dfsg
Andreas Tille
gitlab at salsa.debian.org
Tue Oct 27 19:56:39 GMT 2020
Andreas Tille pushed to branch upstream at Debian Med / libsis-base-java
Commits:
1a7b930d by Andreas Tille at 2020-10-27T20:51:16+01:00
New upstream version 18.09~pre1+git20180928.45fbd31+dfsg
- - - - -
9 changed files:
- source/java/ch/systemsx/cisd/base/mdarray/MDAbstractArray.java
- source/java/ch/systemsx/cisd/base/mdarray/MDByteArray.java
- source/java/ch/systemsx/cisd/base/mdarray/MDDoubleArray.java
- source/java/ch/systemsx/cisd/base/mdarray/MDFloatArray.java
- source/java/ch/systemsx/cisd/base/mdarray/MDIntArray.java
- source/java/ch/systemsx/cisd/base/mdarray/MDLongArray.java
- source/java/ch/systemsx/cisd/base/mdarray/MDShortArray.java
- source/java/ch/systemsx/cisd/base/utilities/NativeLibraryUtilities.java
- sourceTest/java/ch/systemsx/cisd/base/mdarray/MDArrayTests.java
Changes:
=====================================
source/java/ch/systemsx/cisd/base/mdarray/MDAbstractArray.java
=====================================
@@ -105,6 +105,14 @@ public abstract class MDAbstractArray<T> implements Serializable,
}
}
+ protected MDAbstractArray(MDAbstractArray<T> template)
+ {
+ this.dimensions = template.dimensions.clone();
+ this.hyperRowLength = template.hyperRowLength;
+ this.capacityHyperRows = template.capacityHyperRows;
+ this.size = template.size;
+ }
+
protected int computeHyperRowLength(@SuppressWarnings("hiding")
int[] dimensions)
{
=====================================
source/java/ch/systemsx/cisd/base/mdarray/MDByteArray.java
=====================================
@@ -153,6 +153,15 @@ public final class MDByteArray extends MDAbstractArray<Byte>
}
}
+ /**
+ * Creates an independent copy (clone) of the <var>template</var> provided.
+ */
+ public MDByteArray(MDByteArray template)
+ {
+ super(template);
+ this.flattenedArray = template.flattenedArray.clone();
+ }
+
private static int[] getDimensions(byte[][] matrix)
{
assert matrix != null;
@@ -373,4 +382,10 @@ public final class MDByteArray extends MDAbstractArray<Byte>
}
}
+ @Override
+ public MDByteArray clone()
+ {
+ return new MDByteArray(this);
+ }
+
}
=====================================
source/java/ch/systemsx/cisd/base/mdarray/MDDoubleArray.java
=====================================
@@ -153,6 +153,15 @@ public final class MDDoubleArray extends MDAbstractArray<Double>
}
}
+ /**
+ * Creates an independent copy (clone) of the <var>template</var> provided.
+ */
+ public MDDoubleArray(MDDoubleArray template)
+ {
+ super(template);
+ this.flattenedArray = template.flattenedArray.clone();
+ }
+
private static int[] getDimensions(double[][] matrix)
{
assert matrix != null;
@@ -373,4 +382,10 @@ public final class MDDoubleArray extends MDAbstractArray<Double>
}
}
+ @Override
+ public MDDoubleArray clone()
+ {
+ return new MDDoubleArray(this);
+ }
+
}
=====================================
source/java/ch/systemsx/cisd/base/mdarray/MDFloatArray.java
=====================================
@@ -153,6 +153,15 @@ public final class MDFloatArray extends MDAbstractArray<Float>
}
}
+ /**
+ * Creates an independent copy (clone) of the <var>template</var> provided.
+ */
+ public MDFloatArray(MDFloatArray template)
+ {
+ super(template);
+ this.flattenedArray = template.flattenedArray.clone();
+ }
+
private static int[] getDimensions(float[][] matrix)
{
assert matrix != null;
@@ -373,4 +382,10 @@ public final class MDFloatArray extends MDAbstractArray<Float>
}
}
+ @Override
+ public MDFloatArray clone()
+ {
+ return new MDFloatArray(this);
+ }
+
}
=====================================
source/java/ch/systemsx/cisd/base/mdarray/MDIntArray.java
=====================================
@@ -153,6 +153,15 @@ public final class MDIntArray extends MDAbstractArray<Integer>
}
}
+ /**
+ * Creates an independent copy (clone) of the <var>template</var> provided.
+ */
+ public MDIntArray(MDIntArray template)
+ {
+ super(template);
+ this.flattenedArray = template.flattenedArray.clone();
+ }
+
private static int[] getDimensions(int[][] matrix)
{
assert matrix != null;
@@ -373,4 +382,10 @@ public final class MDIntArray extends MDAbstractArray<Integer>
}
}
+ @Override
+ public MDIntArray clone()
+ {
+ return new MDIntArray(this);
+ }
+
}
=====================================
source/java/ch/systemsx/cisd/base/mdarray/MDLongArray.java
=====================================
@@ -153,6 +153,15 @@ public final class MDLongArray extends MDAbstractArray<Long>
}
}
+ /**
+ * Creates an independent copy (clone) of the <var>template</var> provided.
+ */
+ public MDLongArray(MDLongArray template)
+ {
+ super(template);
+ this.flattenedArray = template.flattenedArray.clone();
+ }
+
private static int[] getDimensions(long[][] matrix)
{
assert matrix != null;
@@ -373,4 +382,10 @@ public final class MDLongArray extends MDAbstractArray<Long>
}
}
+ @Override
+ public MDLongArray clone()
+ {
+ return new MDLongArray(this);
+ }
+
}
=====================================
source/java/ch/systemsx/cisd/base/mdarray/MDShortArray.java
=====================================
@@ -153,6 +153,15 @@ public final class MDShortArray extends MDAbstractArray<Short>
}
}
+ /**
+ * Creates an independent copy (clone) of the <var>template</var> provided.
+ */
+ public MDShortArray(MDShortArray template)
+ {
+ super(template);
+ this.flattenedArray = template.flattenedArray.clone();
+ }
+
private static int[] getDimensions(short[][] matrix)
{
assert matrix != null;
@@ -373,4 +382,10 @@ public final class MDShortArray extends MDAbstractArray<Short>
}
}
+ @Override
+ public MDShortArray clone()
+ {
+ return new MDShortArray(this);
+ }
+
}
=====================================
source/java/ch/systemsx/cisd/base/utilities/NativeLibraryUtilities.java
=====================================
@@ -102,7 +102,7 @@ import java.util.zip.ZipFile;
* mandatory locks make this impossible). This is the 'auto mode' and thus the simplest way of using this utility class for the user of your
* program.</li>
* <li>Finally, if no appropriate structure is found in the classpath, {@link #loadNativeLibrary(String)} will fall back to the Java default method of
- * loading JNI libraries via {@link System#loadLibrary()}. This may require the Java property <code>java.library.path</code> to be set and it may
+ * loading JNI libraries via {@link System#loadLibrary(String)}. This may require the Java property <code>java.library.path</code> to be set and it may
* require the library to follow a platform specific naming convention for the native shared library file.</li>
* </ol>
*
=====================================
sourceTest/java/ch/systemsx/cisd/base/mdarray/MDArrayTests.java
=====================================
@@ -16,6 +16,7 @@
package ch.systemsx.cisd.base.mdarray;
+import static org.testng.Assert.assertNotSame;
import static org.testng.AssertJUnit.assertEquals;
import static org.testng.AssertJUnit.assertTrue;
@@ -288,6 +289,34 @@ public class MDArrayTests
}
}
+ @Test
+ public void testCloneMDArray()
+ {
+ final float[][] matrix1 = new float[][]
+ {
+ { 1f, 2f, 3f, 4f },
+ { 5f, 6f, 7f, 8f },
+ { 9f, 10f, 11f, 12f } };
+ final MDFloatArray array = new MDFloatArray(matrix1);
+ final MDFloatArray array2 = array.clone();
+ assertNotSame(array2.getAsFlatArray(), array.getAsFlatArray());
+ assertNotSame(array2.dimensions, array.dimensions);
+ assertEquals(array2.hyperRowLength, array.hyperRowLength);
+ assertEquals(array2.capacityHyperRows, array.capacityHyperRows);
+ assertEquals(array2.size, array.size);
+ assertEquals(2, array2.rank());
+ assertEquals(12, array2.size());
+ assertEquals(3, array2.size(0));
+ assertEquals(4, array2.size(1));
+ assertEquals(7f, array2.get(1, 2));
+ final float[][] matrix2 = array2.toMatrix();
+ assertEquals(matrix1.length, matrix2.length);
+ for (int i = 0; i < matrix1.length; ++i)
+ {
+ assertTrue(Arrays.equals(matrix1[i], matrix2[i]));
+ }
+ }
+
public static void main(String[] args) throws Throwable
{
System.out.println(BuildAndEnvironmentInfo.INSTANCE);
View it on GitLab: https://salsa.debian.org/med-team/libsis-base-java/-/commit/1a7b930da1252c9f456231a4376da2b9e58c35e7
--
View it on GitLab: https://salsa.debian.org/med-team/libsis-base-java/-/commit/1a7b930da1252c9f456231a4376da2b9e58c35e7
You're receiving this email because of your account on salsa.debian.org.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://alioth-lists.debian.net/pipermail/debian-med-commit/attachments/20201027/c3327f65/attachment-0001.html>
More information about the debian-med-commit
mailing list