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

All Known Implementing Classes:
IIOTextureProvider

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(GLProfile glp, 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(GLProfile glp, 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(GLProfile glp, 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

TextureData newTextureData(GLProfile glp,
                           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:
glp - the OpenGL Profile this texture data should be created for.
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

TextureData newTextureData(GLProfile glp,
                           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:
glp - the OpenGL Profile this texture data should be created for.
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

TextureData newTextureData(GLProfile glp,
                           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:
glp - the OpenGL Profile this texture data should be created for.
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 2010 JogAmp Community.