public abstract class SectionDistanceLevelPropagator extends LevelPropagator
Modifier | Constructor and Description |
---|---|
protected |
SectionDistanceLevelPropagator(int levelCount,
int expectedLevelSize,
int expectedTotalSize) |
Modifier and Type | Method and Description |
---|---|
protected abstract int |
getInitialLevel(long id) |
protected int |
getPropagatedLevel(long sourceId,
long targetId,
int level) |
protected boolean |
isMarker(long id) |
protected void |
propagateLevel(long id,
int level,
boolean decrease) |
protected int |
recalculateLevel(long id,
long excludedId,
int maxLevel) |
void |
update(long id,
int level,
boolean decrease) |
applyPendingUpdates, getLevel, getPendingUpdateCount, hasPendingUpdates, propagateLevel, removePendingUpdate, removePendingUpdateIf, resetLevel, setLevel, updateLevel
protected SectionDistanceLevelPropagator(int levelCount, int expectedLevelSize, int expectedTotalSize)
protected boolean isMarker(long id)
isMarker
in class LevelPropagator
protected void propagateLevel(long id, int level, boolean decrease)
propagateLevel
in class LevelPropagator
protected int recalculateLevel(long id, long excludedId, int maxLevel)
recalculateLevel
in class LevelPropagator
protected int getPropagatedLevel(long sourceId, long targetId, int level)
getPropagatedLevel
in class LevelPropagator
protected abstract int getInitialLevel(long id)
public void update(long id, int level, boolean decrease)