view flys-aft/src/main/java/de/intevation/aft/TimeInterval.java @ 4798:39885bdfc6fc

Added calculation of the "Umhuellende" to calculation of "W fuer ungleichwertige Abfluesse". This is done by figuring out the WST columns that imfold the data and then do simple "gleichwertige" calculations from the start of the interval. This is too much because only the Qs are needed for the "Umhuellende".
author Sascha L. Teichmann <teichmann@intevation.de>
date Sun, 13 Jan 2013 16:18:28 +0100
parents b195fede1c3b
children
line wrap: on
line source
package de.intevation.aft;

import java.util.Date;

public class TimeInterval
implements   Comparable<TimeInterval>
{
    protected int  id;
    protected Date start;
    protected Date stop;

    public TimeInterval() {
    }

    public TimeInterval(Date start, Date stop) {
        this.start = start;
        this.stop  = stop;
    }

    public TimeInterval(int id, Date start, Date stop) {
        this(start, stop);
        this.id    = id;
    }

    protected static int compare(Date d1, Date d2) {
        long s1 = d1 != null ? d1.getTime()/1000L : 0L;
        long s2 = d2 != null ? d2.getTime()/1000L : 0L;
        long diff = s1 - s2;
        return diff < 0L
            ? -1
            : diff > 0L ? 1 : 0;
    }

    @Override
    public int compareTo(TimeInterval other) {
        int cmp = compare(start, other.start);
        return cmp != 0
            ? cmp
            : compare(stop, other.stop);
    }

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public Date getStart() {
        return start;
    }

    public void setStart(Date start) {
        this.start = start;
    }

    public Date getStop() {
        return stop;
    }

    public void setStop(Date stop) {
        this.stop = stop;
    }

    public String toString() {
        return "[TimeInterval: start=" + start + ", stop=" + stop + "]";
    }
}
// vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org