teichmann@5863: /* Copyright (C) 2011, 2012, 2013 by Bundesanstalt für Gewässerkunde teichmann@5863: * Software engineering by Intevation GmbH teichmann@5863: * teichmann@5994: * This file is Free Software under the GNU AGPL (>=v3) teichmann@5863: * and comes with ABSOLUTELY NO WARRANTY! Check out the teichmann@5994: * documentation coming with Dive4Elements River for details. teichmann@5863: */ teichmann@5863: teichmann@5831: package org.dive4elements.river.artifacts.model.minfo; raimund@3886: raimund@3897: import gnu.trove.TDoubleArrayList; raimund@3897: raimund@3886: felix@7391: public class BedHeightSingleData felix@7391: extends BedHeightData raimund@3886: { raimund@3886: protected int year; raimund@3897: protected TDoubleArrayList data_gap; raimund@3897: protected TDoubleArrayList morphWidth; raimund@3886: felix@7391: public BedHeightSingleData() { raimund@3886: super(); raimund@3886: this.year = -1; raimund@3897: data_gap = new TDoubleArrayList(); raimund@3897: morphWidth = new TDoubleArrayList(); raimund@3886: } raimund@3886: felix@7391: public BedHeightSingleData(String name) { raimund@3886: super(name); raimund@3886: this.year = -1; raimund@3897: data_gap = new TDoubleArrayList(); raimund@3897: morphWidth = new TDoubleArrayList(); raimund@3886: } raimund@3886: raimund@3886: public void add( raimund@3886: double value, raimund@3886: double station, raimund@3886: double gap, raimund@3886: double width, raimund@3886: int year raimund@3886: ) { raimund@3897: super.add(value, station); raimund@3886: this.year = year; raimund@3897: this.data_gap.add(gap); raimund@3897: this.morphWidth.add(width); raimund@3886: } raimund@3886: raimund@3886: public int getYear() { raimund@3886: return this.year; raimund@3886: } raimund@3897: raimund@3897: public double getMorphWidth(int idx) { teichmann@6149: return this.morphWidth.getQuick(idx); raimund@3897: } raimund@3897: raimund@3897: public double getDataGap(int idx) { teichmann@6149: return this.data_gap.getQuick(idx); raimund@3897: } raimund@3897: raimund@3897: public double getMorphWidth(double station) { teichmann@6149: int index = this.station.indexOf(station); teichmann@6149: return index >= 0 ? morphWidth.getQuick(index): Double.NaN; raimund@3897: } raimund@3897: raimund@3897: public double getDataGap(double station) { teichmann@6149: int index = this.station.indexOf(station); teichmann@6149: return index >= 0 ? data_gap.getQuick(index) : Double.NaN; raimund@3897: } bjoern@4533: bjoern@4533: public double[] getMorphWidths() { bjoern@4533: return this.morphWidth.toNativeArray(); bjoern@4533: } raimund@3886: }