Mercurial > dive4elements > river
diff artifacts/src/main/java/org/dive4elements/river/artifacts/sinfo/common/AbstractSInfoCalculationResult.java @ 9000:50cc99579a46
Work on uinfo
author | gernotbelger |
---|---|
date | Thu, 12 Apr 2018 19:16:10 +0200 |
parents | b194fa64506a |
children |
line wrap: on
line diff
--- a/artifacts/src/main/java/org/dive4elements/river/artifacts/sinfo/common/AbstractSInfoCalculationResult.java Thu Apr 12 19:15:42 2018 +0200 +++ b/artifacts/src/main/java/org/dive4elements/river/artifacts/sinfo/common/AbstractSInfoCalculationResult.java Thu Apr 12 19:16:10 2018 +0200 @@ -8,83 +8,29 @@ * documentation coming with Dive4Elements River for details. */ package org.dive4elements.river.artifacts.sinfo.common; - -import java.io.Serializable; -import java.util.ArrayList; + import java.util.Collection; -import java.util.Collections; -import java.util.List; - +import org.dive4elements.river.artifacts.common.AbstractCalculationResult; +import org.dive4elements.river.artifacts.common.ResultRow; import org.dive4elements.river.artifacts.sinfo.util.WstInfo; - -import gnu.trove.TDoubleArrayList; + /** * @author Gernot Belger */ -public abstract class AbstractSInfoCalculationResult implements Serializable { +public abstract class AbstractSInfoCalculationResult extends AbstractCalculationResult { private static final long serialVersionUID = 1L; - - private final Collection<SInfoResultRow> rows; - - private final String label; - + private final WstInfo wst; - public AbstractSInfoCalculationResult(final String label, final WstInfo wst, final Collection<SInfoResultRow> rows) { - this.label = label; - this.wst = wst; - this.rows = new ArrayList<>(rows); + public AbstractSInfoCalculationResult(final String label, final WstInfo wst, final Collection< ResultRow> rows) { + super(label, rows); + this.wst = wst; } - public final String getLabel() { - return this.label; - } public final WstInfo getWst() { return this.wst; - } - - public boolean isEmpty() { - return this.rows.isEmpty(); - } - - public final void addRow(final SInfoResultRow resultRow) { - this.rows.add(resultRow); - } - - public final Collection<SInfoResultRow> getRows() { - return Collections.unmodifiableCollection(this.rows); - } - - public final double[][] getStationPoints(final SInfoResultType type) { - - final TDoubleArrayList xPoints = new TDoubleArrayList(this.rows.size()); - final TDoubleArrayList yPoints = new TDoubleArrayList(this.rows.size()); - - for (final SInfoResultRow row : this.rows) { - - final double station = row.getDoubleValue(SInfoResultType.station); - final double value = row.getDoubleValue(type); - - xPoints.add(station); - yPoints.add(value); - } - - return new double[][] { xPoints.toNativeArray(), yPoints.toNativeArray() }; - } - - protected final <TYPE> List<TYPE> getValues(final SInfoResultType type) { - - final List<TYPE> values = new ArrayList<>(); - - for (final SInfoResultRow row : this.rows) { - @SuppressWarnings("unchecked") - final TYPE value = (TYPE) row.getValue(type); - values.add(value); - } - - return values; - } + } } \ No newline at end of file