public class DefaultWayTagResolver extends java.lang.Object implements WayTagResolver
isValid()
car,bike,foot
, hier also car=1, bike=2, foot=4, usw.wtr.tag.highway.secondary=1,5,50,car
car|bike
.
Dieser Wert landet spaeter in den flags
wtr.deny.tracktype.grade5=bike
bike
-flag wenn grade5
wtr.deny.motorcar.yes=car
car
-flag wenn motorcar
erlaubt.
osm2po.config
-Datei.ONEWAY_NO, ONEWAY_YES, ONEWAY_YES_REVERSED, ONEWAY_YES_ROUNDABOUT, ONEWAY_YES_UNKNOWN
CLAZZ_NULL, FLAGS_NULL
Constructor and Description |
---|
DefaultWayTagResolver() |
Modifier and Type | Method and Description |
---|---|
void |
close()
Schliesst und ermoeglicht so das Aufraeumen
etwaiger Resourcen.
|
byte |
getClazz()
Liefert eine Typ-Klassen-Id.
|
Var<?> |
getCustom()
Liefert frei definierbare Zusatzinformationen.
|
int |
getFlags()
Sollte ein BitFeld (int) liefern, welches Auskunft
ueber Bestimmte Eigenschaften liefert.
|
java.lang.String |
getName()
Liefert den Namen einer OSM-Entity.
|
int |
getOneWayType()
Einbahnstrasse ja/nein bzw. weitere Sonderlocken.
|
int |
getSpeedInKmh()
Liefert die maximale Geschwindigkeit in Kmh.
|
boolean |
isLevelCrossing()
Liefert true, wenn es sich hier um einen OSM-Weg
handelt, der bei
OsmNode.isLevelCrossing()
entkoppelt werden muss. z.B. bei Bahnuebergaengen,
die Schiene und Strasse verbinden. |
boolean |
isPolygon() |
boolean |
isRoundabout() |
boolean |
isValid()
Liefert die finale Entscheidung, ob ein Weg verarbeitet
oder verworfen werden soll.
|
void |
onObj(java.lang.String key,
java.lang.Object value)
Kann von einem Parser gerufen werden, um externe,
bzw. benutzerdefinierte Daten zu uebertragen.
|
void |
onTag(java.lang.String key,
java.lang.String value)
Wird vom Parser fuer jedes gelesene Tag aufgerufen.
|
void |
onTags(long entityId)
Wird vom Parser aufgerufen, um
eine Instanz dieser Klasse darueber zu informieren,
dass interne Variablen zu reinitialisieren sind.
|
void |
onTagsComplete()
Wird nach dem Lesen aller Tags
aufgerufen und bietet somit die letzte Chance
die bisher ermittelten Werte zu interpretieren.
|
void |
open(Config config)
Wird einmalig nach der Instanziierung aufgerufen.
|
public void open(Config config)
TagResolver
open
in interface TagResolver
config
- Config
Konfiguration.public void onTags(long entityId)
TagResolver
onTags
in interface TagResolver
entityId
- Id - Node, Way, Relation.public void onTag(java.lang.String key, java.lang.String value)
TagResolver
onTag
in interface TagResolver
key
- String
Schluessel.value
- String
Wert.public void onObj(java.lang.String key, java.lang.Object value)
TagResolver
onObj
in interface TagResolver
key
- String
Schluessel.value
- Object
beliebiger Wert.TagResolver.getCustom()
public java.lang.String getName()
TagResolver
getName
in interface TagResolver
String
Name.public Var<?> getCustom()
TagResolver
getCustom
in interface TagResolver
Var
.public int getFlags()
TagResolver
getFlags
in interface TagResolver
public byte getClazz()
TagResolver
getClazz
in interface TagResolver
public int getOneWayType()
WayTagResolver
getOneWayType
in interface WayTagResolver
WayTagResolver.ONEWAY_YES
, WayTagResolver.ONEWAY_NO
,
WayTagResolver.ONEWAY_YES_REVERSED
, WayTagResolver.ONEWAY_YES_UNKNOWN
public boolean isValid()
false
,
wenn clazz=0
oder die finalMask
s.o. die flags
nicht maskiert.isValid
in interface TagResolver
DefaultWayTagResolver
public int getSpeedInKmh()
WayTagResolver
getSpeedInKmh
in interface WayTagResolver
public boolean isLevelCrossing()
WayTagResolver
OsmNode.isLevelCrossing()
entkoppelt werden muss. z.B. bei Bahnuebergaengen,
die Schiene und Strasse verbinden.isLevelCrossing
in interface WayTagResolver
public boolean isPolygon()
isPolygon
in interface WayTagResolver
public boolean isRoundabout()
isRoundabout
in interface WayTagResolver
public void onTagsComplete()
TagResolver
onTagsComplete
in interface TagResolver
public void close()
TagResolver
close
in interface TagResolver