Crazy Eddies GUI System: CEGUI::DirectFBTexture Class Reference

Crazy Eddies GUI System 0.7.6

- Main Page
- Related Pages
- Namespaces
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

Public Member Functions | Protected Member Functions | Protected Attributes | Friends
CEGUI::DirectFBTexture Class Reference

Implementation of CEGUI::Texture interface using DirectFB. More...

Inheritance diagram for CEGUI::DirectFBTexture:
[legend]
Collaboration diagram for CEGUI::DirectFBTexture:
[legend]

List of all members.

## Public Member Functions
IDirectFBSurface * | getDirectFBSurface () const
| Return a pointer to the IDirectFBSurface this texture represents.
const Size & | getSize () const
| Returns the current pixel size of the texture.
const Size & | getOriginalDataSize () const
| Returns the original pixel size of the data loaded into the texture.
const Vector2 & | getTexelScaling () const
| Returns pixel to texel scale values that should be used for converting pixel values to texture co-ords.
void | loadFromFile (const String &filename, const String &resourceGroup)
| Loads the specified image file into the texture. The texture is resized as required to hold the image.
void | loadFromMemory (const void *buffer, const Size &buffer_size, PixelFormat pixel_format)
| Loads (copies) an image in memory into the texture. The texture is resized as required to hold the image.
void | saveToMemory (void *buffer)
| Save / dump the content of the texture to a memory buffer. The dumped pixel format is always RGBA (4 bytes per pixel).
## Protected Member Functions
| DirectFBTexture (IDirectFB &directfb)
| Basic constructor.
| DirectFBTexture (IDirectFB &directfb, const String &filename, const String &resourceGroup)
| Construct texture from file.
| DirectFBTexture (IDirectFB &directfb, const Size &size)
| Construct texture with given size.
| ~DirectFBTexture ()
| Destructor.
void | cleanupDirectFBTexture ()
| clean up the internal texture.
void | updateCachedScaleValues ()
| updates cached scale value used to map pixels to texture co-ords.
## Protected Attributes
IDirectFB & | d_directfb
| DirectFB interface we were given when constructed.
IDirectFBSurface * | d_texture
| surface representing the texture.
Size | d_size
| Size of the texture.
Size | d_dataSize
| original pixel of size data loaded into texture
Vector2 | d_texelScaling
| cached pixel to texel mapping scale values.
## Friends
Texture & | DirectFBRenderer::createTexture ()
Texture & | DirectFBRenderer::createTexture (const String &, const String &)
Texture & | DirectFBRenderer::createTexture (const Size &)
void | DirectFBRenderer::destroyTexture (Texture &)

## Detailed Description

Implementation of CEGUI::Texture interface using DirectFB.

## Member Function Documentation

const Size& CEGUI::DirectFBTexture::getOriginalDataSize | ( |  | ) | const`[virtual]`

Returns the original pixel size of the data loaded into the texture.

Returns:
  reference to a Size object that describes the original size, in pixels, of the data loaded into the texture.

Implements CEGUI::Texture.

const Size& CEGUI::DirectFBTexture::getSize | ( |  | ) | const`[virtual]`

Returns the current pixel size of the texture.

Returns:
  Reference to a Size object that describes the size of the texture in pixels.

Implements CEGUI::Texture.

const Vector2& CEGUI::DirectFBTexture::getTexelScaling | ( |  | ) | const`[virtual]`

Returns pixel to texel scale values that should be used for converting pixel values to texture co-ords.

Returns:
  Reference to a Vector2 object that describes the scaling values required to accurately map pixel positions to texture co-ordinates.

Implements CEGUI::Texture.

void CEGUI::DirectFBTexture::loadFromFile | ( | const String & | filename,
|  | const String & | resourceGroup
| ) |  | `[virtual]`

Loads the specified image file into the texture. The texture is resized as required to hold the image.

Parameters:

  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.

Returns:
  Nothing.

Implements CEGUI::Texture.

void CEGUI::DirectFBTexture::loadFromMemory | ( | const void * | buffer,
|  | const Size & | buffer_size,
|  | PixelFormat | pixel_format
| ) |  | `[virtual]`

Loads (copies) an image in memory into the texture. The texture is resized as required to hold the image.

Parameters:

  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.

Returns:
  Nothing.

Implements CEGUI::Texture.

void CEGUI::DirectFBTexture::saveToMemory | ( | void * | buffer | ) | `[virtual]`

Save / dump the content of the texture to a memory buffer. The dumped pixel format is always RGBA (4 bytes per pixel).

Parameters:

  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.

Implements CEGUI::Texture.