1 /* 2 3 dsh-piccolo-tilemap Piccolo2D tile map nodes and supporting classes. 4 Copyright (c) 2006-2013 held jointly by the individual authors. 5 6 This library is free software; you can redistribute it and/or modify it 7 under the terms of the GNU Lesser General Public License as published 8 by the Free Software Foundation; either version 3 of the License, or (at 9 your option) any later version. 10 11 This library is distributed in the hope that it will be useful, but WITHOUT 12 ANY WARRANTY; with out even the implied warranty of MERCHANTABILITY or 13 FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public 14 License for more details. 15 16 You should have received a copy of the GNU Lesser General Public License 17 along with this library; if not, write to the Free Software Foundation, 18 Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. 19 20 > http://www.fsf.org/licensing/licenses/lgpl.html 21 > http://www.opensource.org/licenses/lgpl-license.php 22 23 */ 24 package org.dishevelled.piccolo.tilemap.io; 25 26 import java.io.File; 27 import java.io.IOException; 28 import java.io.InputStream; 29 30 import java.net.URL; 31 32 import org.dishevelled.piccolo.tilemap.AbstractTileMap; 33 34 /** 35 * Reader for tile maps. 36 * 37 * @author Michael Heuer 38 * @version $Revision$ $Date$ 39 */ 40 public interface TileMapReader 41 { 42 43 /** 44 * Read a tile map from the specified file. 45 * 46 * @param file file to read from, must not be null 47 * @return a tile map read from the specified file 48 * @throws IOException if an IO error occurs 49 */ 50 AbstractTileMap read(File file) throws IOException; 51 52 /** 53 * Read a tile map from the specified URL. 54 * 55 * @param url URL to read from, must not be null 56 * @return a tile map read from the specified URL 57 * @throws IOException if an IO error occurs 58 */ 59 AbstractTileMap read(URL url) throws IOException; 60 61 /** 62 * Read a tile map from the specified input stream. 63 * 64 * @param inputStream input stream to read from, must not be null 65 * @return a tile map read from the specified input stream 66 * @throws IOException if an IO error occurs 67 */ 68 AbstractTileMap read(InputStream inputStream) throws IOException; 69 }