com.badlogic.gdx.graphics
Interface TextureData

All Known Implementing Classes:
ETC1TextureData, FileTextureData, FloatTextureData, PixmapPacker.ManagedPixmapTextureData, PixmapTextureData

public interface TextureData

Used by a Texture to load the pixel data. A TextureData can either return a Pixmap or upload the pixel data itself. It signals it's type via getType() to the Texture that's using it. The Texture will then either invoke consumePixmap() or consumeCompressedData(int). These are the first methods to be called by Texture. After that the Texture will invoke the other methods to find out about the size of the image data, the format, whether mipmaps should be generated and whether the TextureData is able to manage the pixel data if the OpenGL ES context is lost.

In case the TextureData implementation has the type TextureData.TextureDataType.Compressed, the implementation has to generate the mipmaps itself if necessary. See MipMapGenerator.

Before a call to either consumePixmap() or consumeCompressedData(int), Texture will bind the OpenGL ES texture.

Look at FileTextureData and ETC1TextureData for example implementations of this interface.

Author:
mzechner

Nested Class Summary
static class TextureData.TextureDataType
          The type of this TextureData.
 
Method Summary
 void consumeCompressedData(int target)
          Uploads the pixel data to the OpenGL ES texture.
 Pixmap consumePixmap()
          Returns the Pixmap for upload by Texture.
 boolean disposePixmap()
           
 Pixmap.Format getFormat()
           
 int getHeight()
           
 TextureData.TextureDataType getType()
           
 int getWidth()
           
 boolean isManaged()
           
 boolean isPrepared()
           
 void prepare()
          Prepares the TextureData for a call to consumePixmap() or consumeCompressedData(int).
 boolean useMipMaps()
           
 

Method Detail

getType

TextureData.TextureDataType getType()
Returns:
the TextureData.TextureDataType

isPrepared

boolean isPrepared()
Returns:
whether the TextureData is prepared or not.

prepare

void prepare()
Prepares the TextureData for a call to consumePixmap() or consumeCompressedData(int). This method can be called from a non OpenGL thread and should thus not interact with OpenGL.


consumePixmap

Pixmap consumePixmap()
Returns the Pixmap for upload by Texture. A call to prepare() must precede a call to this method. Any internal datastructures created in prepare() should be disposed of here.

Returns:
the pixmap.

disposePixmap

boolean disposePixmap()
Returns:
whether the caller of consumePixmap() should dispose the Pixmap returned by consumePixmap()

consumeCompressedData

void consumeCompressedData(int target)
Uploads the pixel data to the OpenGL ES texture. The caller must bind an OpenGL ES texture. A call to prepare() must preceed a call to this method. Any internal datastructures created in prepare().


getWidth

int getWidth()
Returns:
the width of the pixel data

getHeight

int getHeight()
Returns:
the height of the pixel data

getFormat

Pixmap.Format getFormat()
Returns:
the Pixmap.Format of the pixel data

useMipMaps

boolean useMipMaps()
Returns:
whether to generate mipmaps or not.

isManaged

boolean isManaged()
Returns:
whether this implementation can cope with a EGL context loss.


Copyright © 2013. All Rights Reserved.