view artifacts/src/main/java/org/dive4elements/river/artifacts/model/sq/SQ.java @ 7300:83bb52fa0c32

(issue1529) Be more tolerant in the fitting. The invalid value warning is removed because invalid data is expected there when datapoints are not valid for this KM
author Andre Heinecke <aheinecke@intevation.de>
date Fri, 11 Oct 2013 18:40:33 +0200
parents b8f94e865875
children 84929f882fa2
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.sq;

import java.io.Serializable;


/** Represents S/Q pairs. They are immutable! */
public class SQ implements Serializable {

    public interface Factory {
        SQ createSQ(double s, double q);
    }

    public static final Factory SQ_FACTORY = new Factory() {
        @Override
        public SQ createSQ(double s, double q) {
            return new SQ(s, q);
        }
    };

    public interface View {
        double getS(SQ sq);
        double getQ(SQ sq);
    }

    public static final View SQ_VIEW = new View() {
        @Override
        public double getS(SQ sq) {
            return sq.getS();
        }

        @Override
        public double getQ(SQ sq) {
            return sq.getQ();
        }
    };

    protected double s;
    protected double q;

    public SQ() {
    }

    public SQ(double s, double q) {
        this.s = s;
        this.q = q;
    }


    public double getS() {
        return s;
    }

    public double getQ() {
        return q;
    }

    public boolean isValid() {
        return !Double.isNaN(s) && !Double.isNaN(q);
    }
}
// vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org