package org.openstreetmap.gui.jmapviewer.interfaces; import org.openstreetmap.gui.jmapviewer.JMapViewer; import org.openstreetmap.gui.jmapviewer.Tile; //License: GPL. Copyright 2008 by Jan Peter Stotz /** * Implement this interface for creating your custom tile cache for * {@link JMapViewer}. * * @author Jan Peter Stotz */ public interface TileCache { /** * Retrieves a tile from the cache if present, otherwise <code>null</code> * will be returned. * * @param source * @param x * tile number on the x axis of the tile to be retrieved * @param y * tile number on the y axis of the tile to be retrieved * @param z * zoom level of the tile to be retrieved * @return the requested tile or <code>null</code> if the tile is not * present in the cache */ public Tile getTile(TileSource source, int x, int y, int z); /** * Adds a tile to the cache. How long after adding a tile can be retrieved * via {@link #getTile(int, int, int)} is unspecified and depends on the * implementation. * * @param tile */ public void addTile(Tile tile); /** * @return the number of tiles hold by the cache */ public int getTileCount(); }