// License: GPL. For details, see LICENSE file.
package org.openstreetmap.josm.data.gpx;
import java.util.Collection;
import org.openstreetmap.josm.data.Bounds;
/**
* Read-only gpx track segments. Implementations doesn't have to be immutable, but should always be thread safe.
* @since 2907
*/
public interface GpxTrackSegment {
/**
* Returns the segment bounds.
* @return the segment bounds
*/
Bounds getBounds();
/**
* Returns the segment waypoints.
* @return the segment waypoints
*/
Collection<WayPoint> getWayPoints();
/**
* Returns the segment length.
* @return the segment length
*/
double length();
/**
* Returns the number of times this track has been changed
* @return Number of times this track has been changed. Always 0 for read-only segments
*/
int getUpdateCount();
}