refactor: TileLoader.createLoader()
This commit is contained in:
@@ -2,7 +2,6 @@ package org.oscim.layers;
|
|||||||
|
|
||||||
import org.oscim.layers.tile.MapTile;
|
import org.oscim.layers.tile.MapTile;
|
||||||
import org.oscim.layers.tile.TileLoader;
|
import org.oscim.layers.tile.TileLoader;
|
||||||
import org.oscim.layers.tile.TileManager;
|
|
||||||
import org.oscim.layers.tile.bitmap.BitmapTileLayer;
|
import org.oscim.layers.tile.bitmap.BitmapTileLayer;
|
||||||
import org.oscim.map.Map;
|
import org.oscim.map.Map;
|
||||||
import org.oscim.tiling.source.bitmap.BitmapTileSource;
|
import org.oscim.tiling.source.bitmap.BitmapTileSource;
|
||||||
@@ -14,8 +13,8 @@ public class JeoTileLayer extends BitmapTileLayer {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected TileLoader createLoader(TileManager tm) {
|
protected TileLoader createLoader() {
|
||||||
return new TileLoader(tm) {
|
return new TileLoader(this.getManager()) {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void cleanup() {
|
public void cleanup() {
|
||||||
|
|||||||
@@ -45,7 +45,7 @@ public abstract class TileLayer extends Layer implements UpdateListener {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
abstract protected TileLoader createLoader(TileManager tm);
|
abstract protected TileLoader createLoader();
|
||||||
|
|
||||||
public TileRenderer tileRenderer() {
|
public TileRenderer tileRenderer() {
|
||||||
return (TileRenderer) mRenderer;
|
return (TileRenderer) mRenderer;
|
||||||
@@ -55,7 +55,7 @@ public abstract class TileLayer extends Layer implements UpdateListener {
|
|||||||
mTileLoader = new TileLoader[numLoaders];
|
mTileLoader = new TileLoader[numLoaders];
|
||||||
|
|
||||||
for (int i = 0; i < numLoaders; i++) {
|
for (int i = 0; i < numLoaders; i++) {
|
||||||
mTileLoader[i] = createLoader(mTileManager);
|
mTileLoader[i] = createLoader();
|
||||||
mTileLoader[i].start();
|
mTileLoader[i].start();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -111,4 +111,8 @@ public abstract class TileLayer extends Layer implements UpdateListener {
|
|||||||
for (TileLoader loader : mTileLoader)
|
for (TileLoader loader : mTileLoader)
|
||||||
loader.proceed();
|
loader.proceed();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public TileManager getManager() {
|
||||||
|
return mTileManager;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -99,7 +99,7 @@ public class BitmapTileLayer extends TileLayer {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected TileLoader createLoader(TileManager tm) {
|
protected TileLoader createLoader() {
|
||||||
return new BitmapTileLoader(tm, mTileSource);
|
return new BitmapTileLoader(this.getManager(), mTileSource);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -42,13 +42,13 @@ public class TestTileLayer extends TileLayer {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected TestTileLoader createLoader(TileManager tm) {
|
protected TestTileLoader createLoader() {
|
||||||
return new TestTileLoader(tm);
|
return new TestTileLoader(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
static class TestTileLoader extends TileLoader {
|
static class TestTileLoader extends TileLoader {
|
||||||
public TestTileLoader(TileManager tileManager) {
|
public TestTileLoader(TileLayer tileLayer) {
|
||||||
super(tileManager);
|
super(tileLayer.getManager());
|
||||||
}
|
}
|
||||||
|
|
||||||
GeometryBuffer mGeom = new GeometryBuffer(128, 16);
|
GeometryBuffer mGeom = new GeometryBuffer(128, 16);
|
||||||
|
|||||||
@@ -3,7 +3,6 @@ package org.oscim.layers.tile.vector;
|
|||||||
import org.oscim.core.Tag;
|
import org.oscim.core.Tag;
|
||||||
import org.oscim.core.TagSet;
|
import org.oscim.core.TagSet;
|
||||||
import org.oscim.layers.tile.TileLoader;
|
import org.oscim.layers.tile.TileLoader;
|
||||||
import org.oscim.layers.tile.TileManager;
|
|
||||||
import org.oscim.map.Map;
|
import org.oscim.map.Map;
|
||||||
|
|
||||||
public class OsmTileLayer extends VectorTileLayer {
|
public class OsmTileLayer extends VectorTileLayer {
|
||||||
@@ -17,15 +16,15 @@ public class OsmTileLayer extends VectorTileLayer {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected TileLoader createLoader(TileManager tm) {
|
protected TileLoader createLoader() {
|
||||||
return new OsmTileLoader(tm);
|
return new OsmTileLoader(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
static class OsmTileLoader extends VectorTileLoader {
|
static class OsmTileLoader extends VectorTileLoader {
|
||||||
private final TagSet mFilteredTags;
|
private final TagSet mFilteredTags;
|
||||||
|
|
||||||
public OsmTileLoader(TileManager tileManager) {
|
public OsmTileLoader(VectorTileLayer tileLayer) {
|
||||||
super(tileManager);
|
super(tileLayer);
|
||||||
mFilteredTags = new TagSet();
|
mFilteredTags = new TagSet();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -58,8 +58,8 @@ public class VectorTileLayer extends TileLayer {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected TileLoader createLoader(TileManager tm) {
|
protected TileLoader createLoader() {
|
||||||
return new VectorTileLoader(tm);
|
return new VectorTileLoader(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -112,7 +112,5 @@ public class VectorTileLayer extends TileLayer {
|
|||||||
resumeLoaders();
|
resumeLoaders();
|
||||||
}
|
}
|
||||||
|
|
||||||
public TileManager getManager() {
|
|
||||||
return mTileManager;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -20,7 +20,6 @@ import static org.oscim.layers.tile.MapTile.State.CANCEL;
|
|||||||
|
|
||||||
import java.util.concurrent.CancellationException;
|
import java.util.concurrent.CancellationException;
|
||||||
|
|
||||||
import org.oscim.backend.canvas.Bitmap;
|
|
||||||
import org.oscim.core.GeometryBuffer.GeometryType;
|
import org.oscim.core.GeometryBuffer.GeometryType;
|
||||||
import org.oscim.core.MapElement;
|
import org.oscim.core.MapElement;
|
||||||
import org.oscim.core.MercatorProjection;
|
import org.oscim.core.MercatorProjection;
|
||||||
@@ -29,7 +28,6 @@ import org.oscim.core.Tag;
|
|||||||
import org.oscim.core.TagSet;
|
import org.oscim.core.TagSet;
|
||||||
import org.oscim.layers.tile.MapTile;
|
import org.oscim.layers.tile.MapTile;
|
||||||
import org.oscim.layers.tile.TileLoader;
|
import org.oscim.layers.tile.TileLoader;
|
||||||
import org.oscim.layers.tile.TileManager;
|
|
||||||
import org.oscim.renderer.elements.ElementLayers;
|
import org.oscim.renderer.elements.ElementLayers;
|
||||||
import org.oscim.renderer.elements.ExtrusionLayer;
|
import org.oscim.renderer.elements.ExtrusionLayer;
|
||||||
import org.oscim.renderer.elements.LineLayer;
|
import org.oscim.renderer.elements.LineLayer;
|
||||||
@@ -83,9 +81,11 @@ public class VectorTileLoader extends TileLoader implements IRenderTheme.Callbac
|
|||||||
renderTheme = theme;
|
renderTheme = theme;
|
||||||
renderLevels = theme.getLevels();
|
renderLevels = theme.getLevels();
|
||||||
}
|
}
|
||||||
|
private final VectorTileLayer mTileLayer;
|
||||||
|
|
||||||
public VectorTileLoader(TileManager tileManager) {
|
public VectorTileLoader(VectorTileLayer tileLayer) {
|
||||||
super(tileManager);
|
super(tileLayer.getManager());
|
||||||
|
mTileLayer = tileLayer;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -397,9 +397,4 @@ public class VectorTileLoader extends TileLoader implements IRenderTheme.Callbac
|
|||||||
|
|
||||||
l.add(mElement, height, minHeight);
|
l.add(mElement, height, minHeight);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public void setTileImage(Bitmap bitmap) {
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user