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 }