001/*
002 * JScience - Java(TM) Tools and Libraries for the Advancement of Sciences.
003 * Copyright (C) 2006 - JScience (http://jscience.org/)
004 * All rights reserved.
005 * 
006 * Permission to use, copy, modify, and distribute this software is
007 * freely granted, provided that this notice is preserved.
008 */
009package org.jscience.geography.coordinates.crs;
010
011import org.jscience.geography.coordinates.Coordinates;
012
013/**
014 * This interface represents a converter between {@link 
015 * org.jscience.geography.coordinates.Coordinates coordinates}.
016 * 
017 * @author <a href="mailto:jean-marie@dautelle.com">Jean-Marie Dautelle</a>
018 * @version 3.0, February 13, 2006
019 */
020public interface CoordinatesConverter<S extends Coordinates<?>, T extends Coordinates<?>> {
021
022    /**
023     * Converts the specified coordinates.
024     * 
025     * @param source the source coordinates.
026     * @return the corresponding target coordinates.
027     * @throws ConversionException if this conversion cannot be performed.
028     */
029    T convert(S source);
030
031}