public class OsmNodeCache
extends java.lang.Object
sort()
aufgerufen werden, damit die folgenden Zugriffe mittels
Binaersuche optimiert werden koennen.OsmNode.isLatLonOnly()
entsprechend einsortiert. getAsNode(long)
muss folglich
in beiden Bags suchen, was die Geschichte ein wenig verlangsamt.
Dieser Nachteil ist aber vernachlaessigbar, da der geringe
Speicherverbrauch hier entscheidend ist.Constructor and Description |
---|
OsmNodeCache() |
Modifier and Type | Method and Description |
---|---|
void |
add(OsmNode osmNode)
Fuegt eine Knoten in den Cache ein.
|
void |
clear() |
boolean |
contains(long key)
Pure Contains-Pruefung, ob Knotenschluessel bekannt ist.
|
Node |
getAsNode(long key)
Liefert eine neue Knoteninstanz aus dem Cache.
|
long |
getUsedCache() |
void |
sort()
Sortiert fuer schnellere Suche.
|
public long getUsedCache()
public void clear()
public void sort()
public void add(OsmNode osmNode)
OsmNode.getId()
verwendet.
OsmNode
Objekte und keine
abgeleiteten Klassen uebergeben werden.osmNode
- OsmNode
public Node getAsNode(long key)
key
- long Schluessel des Knoten.Node
oder NULL.public boolean contains(long key)
key
- long KnotenRef-Schluessel.