view artifacts/src/main/java/org/dive4elements/river/artifacts/model/minfo/BedHeightSingleData.java @ 8098:09725b65955a

Add new and simplyfied SedimentLoadFacet The SedimentLoadFacet is intended to work with the Measurement stations. It uses the same mechanismn to access the Mesurement station values as the calculation does. SedimentLoadLS values need a different facet that will come soon.
author Andre Heinecke <andre.heinecke@intevation.de>
date Fri, 15 Aug 2014 18:27:19 +0200
parents 42076d94977e
children 856701739443
line wrap: on
line source
/* Copyright (C) 2011, 2012, 2013 by Bundesanstalt für Gewässerkunde
 * Software engineering by Intevation GmbH
 *
 * This file is Free Software under the GNU AGPL (>=v3)
 * and comes with ABSOLUTELY NO WARRANTY! Check out the
 * documentation coming with Dive4Elements River for details.
 */

package org.dive4elements.river.artifacts.model.minfo;

import gnu.trove.TDoubleArrayList;


public class BedHeightSingleData
extends BedHeightData
{
    protected int year;
    protected TDoubleArrayList data_gap;
    protected TDoubleArrayList soundingWidth;
    protected TDoubleArrayList width;

    public BedHeightSingleData() {
        super();
        this.year = -1;
        data_gap = new TDoubleArrayList();
        soundingWidth = new TDoubleArrayList();
        width = new TDoubleArrayList();
    }

    public BedHeightSingleData(String name) {
        super(name);
        this.year = -1;
        data_gap = new TDoubleArrayList();
        soundingWidth = new TDoubleArrayList();
        width = new TDoubleArrayList();
    }

    public void add(
        double value,
        double station,
        double gap,
        double sounding,
        double width,
        int year
    ) {
        super.add(value, station);
        this.year = year;
        this.data_gap.add(gap);
        this.soundingWidth.add(sounding);
        this.width.add(width);
    }

    public int getYear() {
        return this.year;
    }

    public double getSoundingWidth(int idx) {
        return this.soundingWidth.getQuick(idx);
    }

    public double getDataGap(int idx) {
        return this.data_gap.getQuick(idx);
    }

    public double getSoundingWidth(double station) {
        int index = this.station.indexOf(station);
        return index >= 0 ? soundingWidth.getQuick(index): Double.NaN;
    }

    public double getDataGap(double station) {
        int index = this.station.indexOf(station);
        return index >= 0 ? data_gap.getQuick(index) : Double.NaN;
    }

    public double[] getSoundingWidths() {
        return this.soundingWidth.toNativeArray();
    }

    public double getWidth(int ndx) {
        return width.getQuick(ndx);
    }

    public double getWidth(double station) {
        int ndx = this.station.indexOf(station);
        if (ndx < 0) {
            return Double.NaN;
        }
        return width.get(ndx);
    }
}

http://dive4elements.wald.intevation.org