Crazy Eddie's GUI System
0.8.4
|
Texture implementation for the Direct3D9Renderer. More...
Public Member Functions | |
void | setDirect3D9Texture (LPDIRECT3DTEXTURE9 tex) |
set the D3D9 texture that this Texture is based on to the specified texture. | |
LPDIRECT3DTEXTURE9 | getDirect3D9Texture () const |
Return the internal D3D9 texture used by this Texture object. | |
void | setOriginalDataSize (const Sizef &sz) |
Sets what the texture should consider as the original data size. | |
void | preD3DReset () |
auto called via the Renderer prior to Reset on the Direct3DDevice9. | |
void | postD3DReset () |
auto called via the Renderer after Reset on the Direct3DDevice9. | |
const String & | getName () const |
Returns the name given to the texture when it was created. | |
const Sizef & | getSize () const |
Returns the current pixel size of the texture. | |
const Sizef & | getOriginalDataSize () const |
Returns the original pixel size of the data loaded into the texture. | |
const Vector2f & | 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 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. | |
void | blitFromMemory (const void *sourceData, const Rectf &area) |
Performs an area memory blit to the texture. | |
void | blitToMemory (void *targetData) |
Performs a complete blit from the texture surface to memory. | |
bool | isPixelFormatSupported (const PixelFormat fmt) const |
Return whether the specified pixel format is supported by the system for the CEGUI::Texture implementation. | |
Protected Member Functions | |
Direct3D9Texture (Direct3D9Renderer &owner, const String &name) | |
Basic constructor. | |
Direct3D9Texture (Direct3D9Renderer &owner, const String &name, const String &filename, const String &resourceGroup) | |
Construct texture from an image file. | |
Direct3D9Texture (Direct3D9Renderer &owner, const String &name, const Sizef &sz) | |
Construct texture with a given size. | |
Direct3D9Texture (Direct3D9Renderer &owner, const String &name, LPDIRECT3DTEXTURE9 tex) | |
Construct texture that wraps an existing D3D9 texture. | |
virtual | ~Direct3D9Texture () |
Destructor. | |
void | createDirect3D9Texture (const Sizef sz, D3DFORMAT format) |
create internal texture. | |
void | cleanupDirect3D9Texture () |
clean up the internal texture. | |
IDirect3DSurface9 * | getTextureSurface () const |
get the IDirect3DSurface9 interface for the underlying texture. | |
void | updateCachedScaleValues () |
updates cached scale value used to map pixels to texture co-ords. | |
void | updateTextureSize () |
set d_size to actual texture size (d_dataSize is used if query fails) | |
Protected Attributes | |
Direct3D9Renderer & | d_owner |
Direct3D9Renderer object that created and owns this texture. | |
LPDIRECT3DTEXTURE9 | d_texture |
The D3D9 texture we're wrapping. | |
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. | |
D3DSURFACE_DESC | d_savedSurfaceDesc |
holds info about the texture surface before we released it for reset. | |
bool | d_savedSurfaceDescValid |
true when d_savedSurfaceDesc is valid and texture can be restored. | |
const String | d_name |
Name the texture was created with. | |
Friends | |
Texture & | Direct3D9Renderer::createTexture (const String &) |
Texture & | Direct3D9Renderer::createTexture (const String &, const String &, const String &) |
Texture & | Direct3D9Renderer::createTexture (const String &, const Sizef &) |
Texture & | Direct3D9Renderer::createTexture (const String &, LPDIRECT3DTEXTURE9 tex) |
void | Direct3D9Renderer::destroyTexture (Texture &) |
void | Direct3D9Renderer::destroyTexture (const String &) |
Texture implementation for the Direct3D9Renderer.
void CEGUI::Direct3D9Texture::blitFromMemory | ( | const void * | sourceData, |
const Rectf & | area | ||
) | [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.
void CEGUI::Direct3D9Texture::blitToMemory | ( | void * | targetData | ) | [virtual] |
Performs a complete blit from the texture surface to memory.
targetData | the buffer where the target is stored |
Implements CEGUI::Texture.
LPDIRECT3DTEXTURE9 CEGUI::Direct3D9Texture::getDirect3D9Texture | ( | ) | const |
Return the internal D3D9 texture used by this Texture object.
const String& CEGUI::Direct3D9Texture::getName | ( | ) | const [virtual] |
Returns the name given to the texture when it was created.
Implements CEGUI::Texture.
const Sizef& CEGUI::Direct3D9Texture::getOriginalDataSize | ( | ) | const [virtual] |
Returns the original pixel size of the data loaded into the texture.
Implements CEGUI::Texture.
const Sizef& CEGUI::Direct3D9Texture::getSize | ( | ) | const [virtual] |
Returns the current pixel size of the texture.
Implements CEGUI::Texture.
const Vector2f& CEGUI::Direct3D9Texture::getTexelScaling | ( | ) | const [virtual] |
Returns pixel to texel scale values that should be used for converting pixel values to texture co-ords.
Implements CEGUI::Texture.
bool CEGUI::Direct3D9Texture::isPixelFormatSupported | ( | const PixelFormat | fmt | ) | const [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.
void CEGUI::Direct3D9Texture::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.
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.
void CEGUI::Direct3D9Texture::loadFromMemory | ( | const void * | buffer, |
const Sizef & | 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.
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.
void CEGUI::Direct3D9Texture::setOriginalDataSize | ( | const Sizef & | sz | ) |
Sets what the texture should consider as the original data size.