Mercurial > dive4elements > river
view artifacts/src/main/java/org/dive4elements/river/artifacts/WaterLineArtifact.java @ 9479:2b83d3a96703
i18n TODO "benutzerdefiniert" = "custom" fixed
author | gernotbelger |
---|---|
date | Mon, 10 Sep 2018 15:31:55 +0200 |
parents | 3f49835a00c3 |
children |
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; import java.io.Serializable; import org.dive4elements.artifacts.CallContext; import org.dive4elements.river.artifacts.states.DefaultState.ComputeType; /** * Interface, Artifact can create WaterLines (Water against Cross-Profile). */ public interface WaterLineArtifact { /** * Get points that define a line of a (water)facet against a cross- * section. * * @param stateId * @param hash * * @param waterLineIndex * The object whith wich this artifact determines which of the waterlevels to return. Given to the facet when * constructed. Can be an integer in the simple case, or a more complex description. */ // REMARK: we are giving type, hash and stateId so individual artifacts may call back on their compute method, which // needs // those to hash the result data. // Currently, the old implementations don't do that but simply execute the whole computation each time they are // called... // TODO: instead we should compute outside and provide the computed data to this method. double getWaterLevel(ComputeType type, String hash, String stateId, double currentKm, Serializable waterLineIndex, double nextKm, double prevKm, CallContext context); }