package ru.rodsoft.openstreetmap.josm.plugins.customizepublictransportstop; import java.util.ArrayList; import org.openstreetmap.josm.data.osm.Node; import org.openstreetmap.josm.data.osm.OsmPrimitive; import org.openstreetmap.josm.data.osm.Relation; import org.openstreetmap.josm.data.osm.Way; /** * * @author Rodion Scherbakov * Stop area settings */ public class StopArea { /** * Name of stop area */ public String name = null; /** * English name of stop area */ public String nameEn = null; /** * Operator of stop area */ public String operator = null; /** * Network name */ public String network = null; /** * Level of network including this stop area */ public String service = null; /** * Flag of bus stop area */ public Boolean isBus = false; /** * Flag of trolleybus stop area */ public Boolean isTrolleybus = false; /** * Flag of share taxi stop area */ public Boolean isShareTaxi = false; /** * Flag of bus station stop area */ public Boolean isBusStation = false; /** * Flag of tram stop area */ public Boolean isTram = false; /** * Flag of railway stop area */ public Boolean isTrainStop = false; /** * Flag of railway station */ public Boolean isTrainStation = false; /** * Flag of bench on selected platform */ public Boolean isAssignTransportType = false; /** * Flag of bench near platform */ public Boolean isBench = false; /** * Flag of covered platform */ public Boolean isCovered = false; /** * Flag of shelter on selected platform */ public Boolean isShelter = false; /** * Relation of stop area */ public Relation stopAreaRelation = null; /** * Flag of existing of stop position */ public Boolean isStopPointExists = false; /** * Flag of area platform */ public Boolean isArea = false; /** * Separate node of bus stop or bus station */ public Node separateBusStopNode = null; /** * List of nodes of stop positions */ public final ArrayList<Node> stopPoints = new ArrayList<Node>(); /** * List of josm objects of platforms */ public final ArrayList<OsmPrimitive> platforms = new ArrayList<OsmPrimitive>(); /** * List of non stop positions or platform stop area members */ public final ArrayList<OsmPrimitive> otherMembers = new ArrayList<OsmPrimitive>(); /** * Selected josm objects. Must be a platform */ public OsmPrimitive selectedObject = null; /** * Constructor of stop area object */ public StopArea() { } /** * Constructor of stop area object from selected object * @param selectedObject Selected object */ public StopArea(OsmPrimitive selectedObject) { this.selectedObject = selectedObject; } /** * Get selected in editor node * @return Selected node or null */ public Node getSelectedNode() { if(selectedObject instanceof Node) return (Node)selectedObject; return null; } /** * Get selected way * @return Selected way or null */ public Way getSelectedWay() { if(selectedObject instanceof Way) return (Way)selectedObject; return null; } }