Crazy Eddie's GUI System
${CEGUI_VERSION}
|
Implementation of CEGUI::Texture interface using DirectFB. More...
Public Member Functions | |
IDirectFBSurface * | getDirectFBSurface () const |
Return a pointer to the IDirectFBSurface this texture represents. | |
const String & | getName () const |
Returns the name given to the texture when it was created. More... | |
const Sizef & | getSize () const |
Returns the current pixel size of the texture. More... | |
const Sizef & | getOriginalDataSize () const |
Returns the original pixel size of the data loaded into the texture. More... | |
const Vector2f & | getTexelScaling () const |
Returns pixel to texel scale values that should be used for converting pixel values to texture co-ords. More... | |
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. More... | |
void | loadFromMemory (const void *buffer, const Sizef &buffer_size, PixelFormat pixel_format) |
Loads (copies) an image in memory into the texture. The texture is resized as required to hold the image. More... | |
void | blitFromMemory (const void *sourceData, const Rectf &area) |
Performs an area memory blit to the texture. More... | |
void | blitToMemory (void *targetData) |
Performs a complete blit from the texture surface to memory. More... | |
bool | isPixelFormatSupported (const PixelFormat fmt) const |
Return whether the specified pixel format is supported by the system for the CEGUI::Texture implementation. More... | |
![]() | |
virtual | ~Texture () |
Destructor for Texture base class. | |
virtual | ~Texture () |
Destructor for Texture base class. | |
Protected Member Functions | |
DirectFBTexture (IDirectFB &directfb, const String &name) | |
Basic constructor. | |
DirectFBTexture (IDirectFB &directfb, const String &name, const String &filename, const String &resourceGroup) | |
Construct texture from file. | |
DirectFBTexture (IDirectFB &directfb, const String &name, const Sizef &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. | |
Sizef | d_size |
Size of the texture. | |
Sizef | d_dataSize |
original pixel of size data loaded into texture | |
Vector2f | d_texelScaling |
cached pixel to texel mapping scale values. | |
const String | d_name |
The name given for this texture. | |
Friends | |
Texture & | DirectFBRenderer::createTexture (const String &) |
Texture & | DirectFBRenderer::createTexture (const String &, const String &, const String &) |
Texture & | DirectFBRenderer::createTexture (const String &, const Sizef &) |
void | DirectFBRenderer::destroyTexture (const String &) |
Additional Inherited Members | |
![]() | |
enum | PixelFormat { PF_RGB, PF_RGBA, PF_RGBA_4444, PF_RGB_565, PF_PVRTC2, PF_PVRTC4, PF_RGB_DXT1, PF_RGBA_DXT1, PF_RGBA_DXT3, PF_RGBA_DXT5, PF_RGB, PF_RGBA, PF_RGBA_4444, PF_RGB_565, PF_PVRTC2, PF_PVRTC4, PF_RGB_DXT1, PF_RGBA_DXT1, PF_RGBA_DXT3, PF_RGBA_DXT5 } |
Enumerated type containing the supported pixel formats that can be passed to loadFromMemory. More... | |
enum | PixelFormat { PF_RGB, PF_RGBA, PF_RGBA_4444, PF_RGB_565, PF_PVRTC2, PF_PVRTC4, PF_RGB_DXT1, PF_RGBA_DXT1, PF_RGBA_DXT3, PF_RGBA_DXT5, PF_RGB, PF_RGBA, PF_RGBA_4444, PF_RGB_565, PF_PVRTC2, PF_PVRTC4, PF_RGB_DXT1, PF_RGBA_DXT1, PF_RGBA_DXT3, PF_RGBA_DXT5 } |
Enumerated type containing the supported pixel formats that can be passed to loadFromMemory. More... | |
Implementation of CEGUI::Texture interface using DirectFB.
|
virtual |
Performs an area memory blit to the texture.
sourceData | input data, the size must match area described by the given Rect |
area | area where the blit will happen |
Implements CEGUI::Texture.
|
virtual |
Performs a complete blit from the texture surface to memory.
targetData | the buffer where the target is stored |
Implements CEGUI::Texture.
|
virtual |
Returns the name given to the texture when it was created.
Implements CEGUI::Texture.
References d_name.
Referenced by CEGUI::DirectFBRenderer::logTextureCreation(), and CEGUI::DirectFBRenderer::logTextureDestruction().
|
virtual |
Returns the original pixel size of the data loaded into the texture.
Implements CEGUI::Texture.
References d_dataSize.
|
virtual |
Returns the current pixel size of the texture.
Implements CEGUI::Texture.
References d_size.
|
virtual |
Returns pixel to texel scale values that should be used for converting pixel values to texture co-ords.
Implements CEGUI::Texture.
References d_texelScaling.
|
virtual |
Return whether the specified pixel format is supported by the system for the CEGUI::Texture implementation.
The result of this call will vary according to the implementaion API and the capabilities of the hardware.
fmt | One of the PixelFormat enumerated values specifying the pixel format that is to be tested. |
Implements CEGUI::Texture.
References CEGUI::Texture::PF_RGB, and CEGUI::Texture::PF_RGBA.
Referenced by loadFromMemory().
|
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. |
Implements CEGUI::Texture.
References CEGUI::ImageCodec::getIdentifierString(), CEGUI::System::getImageCodec(), CEGUI::System::getResourceProvider(), CEGUI::System::getSingletonPtr(), CEGUI::ImageCodec::load(), CEGUI::ResourceProvider::loadRawDataContainer(), and CEGUI::ResourceProvider::unloadRawDataContainer().
Referenced by DirectFBTexture().
|
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. |
Implements CEGUI::Texture.
References cleanupDirectFBTexture(), d_dataSize, d_directfb, d_size, d_texture, isPixelFormatSupported(), CEGUI::Texture::PF_RGB, and updateCachedScaleValues().