package edu.kit.pse.ws2013.routekit.precalculation; import edu.kit.pse.ws2013.routekit.map.EdgeBasedGraph; import edu.kit.pse.ws2013.routekit.models.ArcFlags; import edu.kit.pse.ws2013.routekit.models.ProfileMapCombination; import edu.kit.pse.ws2013.routekit.models.ProgressReporter; import edu.kit.pse.ws2013.routekit.models.Weights; /** * Calculates and sets the {@link Weights} of a {@link ProfileMapCombination}'s * {@link EdgeBasedGraph}. * * Restricted turns are marked by maximal weights. * * @author Fabian Hafner * @version 1.0 * */ public interface EdgeWeighter { /** * Calculates and sets the {@link Weights} of the given * {@link ProfileMapCombination}.<br> * <br> * {@code combination}'s {@link ArcFlags} are set to <code>null</code> to * prevent inconsistencies. * * @param combination * a {@link ProfileMapCombination} * @param reporter * The {@link ProgressReporter} to report progress to. */ public void weightEdges(ProfileMapCombination combination, ProgressReporter reporter); }