com.sun.opengl.util.texture.spi
Interface TextureProvider


public interface TextureProvider

Plug-in interface to TextureIO to support reading OpenGL textures from new file formats. For all methods, either internalFormat or pixelFormat may be 0 in which case they must be inferred as e.g. RGB or RGBA depending on the file contents.


Method Summary
 TextureData newTextureData(File file, int internalFormat, int pixelFormat, boolean mipmap, String fileSuffix)
          Produces a TextureData object from a file, or returns null if the file format was not supported by this TextureProvider.
 TextureData newTextureData(InputStream stream, int internalFormat, int pixelFormat, boolean mipmap, String fileSuffix)
          Produces a TextureData object from a stream, or returns null if the file format was not supported by this TextureProvider.
 TextureData newTextureData(URL url, int internalFormat, int pixelFormat, boolean mipmap, String fileSuffix)
          Produces a TextureData object from a URL, or returns null if the file format was not supported by this TextureProvider.
 

Method Detail

newTextureData

public TextureData newTextureData(File file,
                                  int internalFormat,
                                  int pixelFormat,
                                  boolean mipmap,
                                  String fileSuffix)
                           throws IOException
Produces a TextureData object from a file, or returns null if the file format was not supported by this TextureProvider. Does not do any OpenGL-related work. The resulting TextureData can be converted into an OpenGL texture in a later step.

Parameters:
file - the file from which to read the texture data
internalFormat - the OpenGL internal format to be used for the texture, or 0 if it should be inferred from the file's contents
pixelFormat - the OpenGL pixel format to be used for the texture, or 0 if it should be inferred from the file's contents
mipmap - whether mipmaps should be produced for this texture either by autogenerating them or reading them from the file. Some file formats support multiple mipmaps in a single file in which case those mipmaps will be used rather than generating them.
fileSuffix - the file suffix to be used as a hint to the provider to more quickly decide whether it can handle the file, or null if the provider should infer the type from the file's contents
Throws:
IOException - if an error occurred while reading the file

newTextureData

public TextureData newTextureData(InputStream stream,
                                  int internalFormat,
                                  int pixelFormat,
                                  boolean mipmap,
                                  String fileSuffix)
                           throws IOException
Produces a TextureData object from a stream, or returns null if the file format was not supported by this TextureProvider. Does not do any OpenGL-related work. The resulting TextureData can be converted into an OpenGL texture in a later step.

Parameters:
stream - the stream from which to read the texture data
internalFormat - the OpenGL internal format to be used for the texture, or 0 if it should be inferred from the file's contents
pixelFormat - the OpenGL pixel format to be used for the texture, or 0 if it should be inferred from the file's contents
mipmap - whether mipmaps should be produced for this texture either by autogenerating them or reading them from the file. Some file formats support multiple mipmaps in a single file in which case those mipmaps will be used rather than generating them.
fileSuffix - the file suffix to be used as a hint to the provider to more quickly decide whether it can handle the file, or null if the provider should infer the type from the file's contents
Throws:
IOException - if an error occurred while reading the stream

newTextureData

public TextureData newTextureData(URL url,
                                  int internalFormat,
                                  int pixelFormat,
                                  boolean mipmap,
                                  String fileSuffix)
                           throws IOException
Produces a TextureData object from a URL, or returns null if the file format was not supported by this TextureProvider. Does not do any OpenGL-related work. The resulting TextureData can be converted into an OpenGL texture in a later step.

Parameters:
url - the URL from which to read the texture data
internalFormat - the OpenGL internal format to be used for the texture, or 0 if it should be inferred from the file's contents
pixelFormat - the OpenGL pixel format to be used for the texture, or 0 if it should be inferred from the file's contents
mipmap - whether mipmaps should be produced for this texture either by autogenerating them or reading them from the file. Some file formats support multiple mipmaps in a single file in which case those mipmaps will be used rather than generating them.
fileSuffix - the file suffix to be used as a hint to the provider to more quickly decide whether it can handle the file, or null if the provider should infer the type from the file's contents
Throws:
IOException - if an error occurred while reading the URL


Copyright 2005 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms.