View Javadoc

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  }