source: josm/trunk/src/org/openstreetmap/josm/gui/layer/markerlayer/MarkerProducers.java@ 13419

Last change on this file since 13419 was 10600, checked in by Don-vip, 8 years ago

see #11390 - sonar - squid:S1609 - Java 8: @FunctionalInterface annotation should be used to flag Single Abstract Method interfaces

  • Property svn:eol-style set to native
File size: 1.3 KB
Line 
1// License: GPL. For details, see LICENSE file.
2package org.openstreetmap.josm.gui.layer.markerlayer;
3
4import java.io.File;
5import java.util.Collection;
6
7import org.openstreetmap.josm.data.gpx.WayPoint;
8
9/**
10 * This interface has to be implemented by anyone who wants to create markers.
11 *
12 * When reading a gpx file, all implementations of MarkerMaker registered with
13 * the Marker are consecutively called until one returns a Marker object.
14 *
15 * @author Frederik Ramm
16 * @since 200 (creation)
17 * @since 10600 (functional interface)
18 */
19@FunctionalInterface
20public interface MarkerProducers {
21 /**
22 * Returns a collection of Marker objects if this implementation wants to create one for the
23 * given input data, or <code>null</code> otherwise.
24 *
25 * @param wp waypoint data
26 * @param relativePath An path to use for constructing relative URLs or
27 * <code>null</code> for no relative URLs
28 * @param parentLayer parent marker layer
29 * @param time Absolute time of marker in seconds since epoch
30 * @param offset Time offset in seconds from the gpx point from which it was derived
31 * @return A collection of Marker objects, or <code>null</code>.
32 */
33 Collection<Marker> createMarkers(WayPoint wp, File relativePath, MarkerLayer parentLayer, double time, double offset);
34}
Note: See TracBrowser for help on using the repository browser.