teichmann@5863: /* Copyright (C) 2011, 2012, 2013 by Bundesanstalt für Gewässerkunde teichmann@5863: * Software engineering by Intevation GmbH teichmann@5863: * teichmann@5863: * This file is Free Software under the GNU AGPL (>=v3) teichmann@5863: * and comes with ABSOLUTELY NO WARRANTY! Check out the teichmann@5863: * documentation coming with Dive4Elements River for details. teichmann@5863: */ teichmann@5863: teichmann@5831: package org.dive4elements.river.artifacts.model; ingo@4241: teichmann@5831: import org.dive4elements.artifactdatabase.state.Facet; teichmann@5831: import org.dive4elements.artifacts.Artifact; teichmann@5831: import org.dive4elements.artifacts.CallContext; teichmann@5867: import org.dive4elements.river.artifacts.D4EArtifact; teichmann@5831: import org.dive4elements.river.artifacts.states.DefaultState.ComputeType; ingo@4241: ingo@4241: ingo@4241: /** ingo@4241: * @author Ingo Weinzierl ingo@4241: */ ingo@4241: public class HistoricalDischargeCurveFacet extends DataFacet { ingo@4241: ingo@4241: public HistoricalDischargeCurveFacet() { ingo@4241: } ingo@4241: ingo@4241: public HistoricalDischargeCurveFacet(int index, String name, ingo@4241: String description, ComputeType type, String stateID, String hash ingo@4241: ingo@4241: ) { ingo@4241: super(index, name, description, type, hash, stateID); ingo@4241: } ingo@4241: ingo@4241: @Override ingo@4241: public Facet deepCopy() { ingo@4241: WaterlevelFacet copy = new WaterlevelFacet(); ingo@4241: copy.set(this); ingo@4241: copy.type = type; ingo@4241: copy.hash = hash; ingo@4241: copy.stateId = stateId; ingo@4241: return copy; ingo@4241: } ingo@4241: ingo@4241: @Override ingo@4241: public Object getData(Artifact artifact, CallContext context) { teichmann@5867: D4EArtifact flys = (D4EArtifact) artifact; ingo@4241: ingo@4241: CalculationResult res = (CalculationResult) flys.compute(context, hash, ingo@4241: stateId, type, false); ingo@4241: ingo@4241: HistoricalDischargeData data = (HistoricalDischargeData) res.getData(); ingo@4241: WQKms[] wqkms = (WQKms[]) data.getWQs(); ingo@4241: ingo@4241: return wqkms[index]; ingo@4241: } ingo@4241: } ingo@4241: // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf-8 :