Abstract base class specifying the required interface for Texture objects. More...
Inherited by CEGUI::Direct3D10Texture, CEGUI::Direct3D11Texture, CEGUI::Direct3D9Texture, CEGUI::DirectFBTexture, CEGUI::IrrlichtTexture, CEGUI::NullTexture, CEGUI::OgreTexture, and CEGUI::OpenGLTexture.
Public Types | |
enum | PixelFormat { PF_RGB, PF_RGBA } |
Enumerated type containing the supported pixel formats that can be passed to loadFromMemory. More... | |
Public Member Functions | |
virtual const Size & | getSize () const =0 |
Returns the current pixel size of the texture. | |
virtual const Size & | getOriginalDataSize () const =0 |
Returns the original pixel size of the data loaded into the texture. | |
virtual const Vector2 & | getTexelScaling () const =0 |
Returns pixel to texel scale values that should be used for converting pixel values to texture co-ords. | |
virtual void | loadFromFile (const String &filename, const String &resourceGroup)=0 |
Loads the specified image file into the texture. The texture is resized as required to hold the image. | |
virtual void | loadFromMemory (const void *buffer, const Size &buffer_size, PixelFormat pixel_format)=0 |
Loads (copies) an image in memory into the texture. The texture is resized as required to hold the image. | |
virtual void | saveToMemory (void *buffer)=0 |
Save / dump the content of the texture to a memory buffer. The dumped pixel format is always RGBA (4 bytes per pixel). | |
virtual | ~Texture () |
Destructor for Texture base class. |
Abstract base class specifying the required interface for Texture objects.
Texture objects are created via the Renderer. The actual inner workings of any Texture object are dependant upon the Renderer (and underlying API) in use. This base class defines the minimal set of functions that is required for the rest of the system to work. Texture objects are only created through the Renderer object's texture creation functions.
virtual const Size& CEGUI::Texture::getOriginalDataSize | ( | ) | const [pure virtual] |
Returns the original pixel size of the data loaded into the texture.
Implemented in CEGUI::Direct3D10Texture, CEGUI::Direct3D11Texture, CEGUI::Direct3D9Texture, CEGUI::DirectFBTexture, CEGUI::IrrlichtTexture, CEGUI::NullTexture, CEGUI::OgreTexture, and CEGUI::OpenGLTexture.
virtual const Size& CEGUI::Texture::getSize | ( | ) | const [pure virtual] |
Returns the current pixel size of the texture.
Implemented in CEGUI::Direct3D10Texture, CEGUI::Direct3D11Texture, CEGUI::Direct3D9Texture, CEGUI::DirectFBTexture, CEGUI::IrrlichtTexture, CEGUI::NullTexture, CEGUI::OgreTexture, and CEGUI::OpenGLTexture.
virtual const Vector2& CEGUI::Texture::getTexelScaling | ( | ) | const [pure virtual] |
Returns pixel to texel scale values that should be used for converting pixel values to texture co-ords.
Implemented in CEGUI::Direct3D10Texture, CEGUI::Direct3D11Texture, CEGUI::Direct3D9Texture, CEGUI::DirectFBTexture, CEGUI::IrrlichtTexture, CEGUI::NullTexture, CEGUI::OgreTexture, and CEGUI::OpenGLTexture.
virtual void CEGUI::Texture::loadFromFile | ( | const String & | filename, |
const String & | resourceGroup | ||
) | [pure virtual] |
Loads the specified image file into the texture. The texture is resized as required to hold the image.
filename | The filename of the image file that is to be loaded into the texture |
resourceGroup | Resource group identifier to be passed to the resource provider when loading the image file. |
Implemented in CEGUI::Direct3D10Texture, CEGUI::Direct3D11Texture, CEGUI::Direct3D9Texture, CEGUI::DirectFBTexture, CEGUI::IrrlichtTexture, CEGUI::NullTexture, CEGUI::OgreTexture, and CEGUI::OpenGLTexture.
virtual void CEGUI::Texture::loadFromMemory | ( | const void * | buffer, |
const Size & | buffer_size, | ||
PixelFormat | pixel_format | ||
) | [pure virtual] |
Loads (copies) an image in memory into the texture. The texture is resized as required to hold the image.
buffer | Pointer to the buffer containing the image data. |
buffer_size | Size of the buffer (in pixels as specified by pixelFormat) |
pixel_format | PixelFormat value describing the format contained in buffPtr. |
Implemented in CEGUI::Direct3D10Texture, CEGUI::Direct3D11Texture, CEGUI::Direct3D9Texture, CEGUI::DirectFBTexture, CEGUI::IrrlichtTexture, CEGUI::NullTexture, CEGUI::OgreTexture, and CEGUI::OpenGLTexture.
virtual void CEGUI::Texture::saveToMemory | ( | void * | buffer ) | [pure virtual] |
Save / dump the content of the texture to a memory buffer. The dumped pixel format is always RGBA (4 bytes per pixel).
buffer | Pointer to the buffer that is to receive the image data. You must make sure that this buffer is large enough to hold the dumped texture data, the required pixel dimensions can be established by calling getSize. |
Implemented in CEGUI::Direct3D10Texture, CEGUI::Direct3D11Texture, CEGUI::Direct3D9Texture, CEGUI::DirectFBTexture, CEGUI::IrrlichtTexture, CEGUI::NullTexture, CEGUI::OgreTexture, and CEGUI::OpenGLTexture.