001    // License: GPL. For details, see LICENSE file.
002    package org.openstreetmap.josm.data.gpx;
003    
004    import java.util.Collection;
005    
006    import org.openstreetmap.josm.data.Bounds;
007    
008    /**
009     * Read-only gpx track segments. Implementations doesn't have to be immutable, but should always be thread safe.
010     *
011     */
012    public interface GpxTrackSegment {
013    
014        Bounds getBounds();
015        Collection<WayPoint> getWayPoints();
016        double length();
017        /**
018         *
019         * @return Number of times this track has been changed. Always 0 for read-only segments
020         */
021        int getUpdateCount();
022    }