iTextureWrapper Struct Reference
[Textures & Materials]
A texture wrapper is an engine-level object that wraps around an actual texture (iTextureHandle).
More...
#include <iengine/texture.h>

Public Member Functions | |
virtual iTextureWrapper * | Clone () const =0 |
Create a clone this texture wrapper, using the same texture handle. | |
virtual int | GetFlags () const =0 |
Return the flags which are used to register the texture. | |
virtual iImage * | GetImageFile ()=0 |
Get the iImage. | |
virtual void | GetKeyColor (int &red, int &green, int &blue) const =0 |
Query the transparent color. | |
virtual const char * | GetTextureClass ()=0 |
Get the "class" of this texture. | |
virtual iTextureHandle * | GetTextureHandle ()=0 |
Get the texture handle. | |
virtual iTextureCallback * | GetUseCallback () const =0 |
Get the use callback. | |
virtual bool | IsVisitRequired () const =0 |
Return true if it is needed to call Visit(). | |
virtual bool | KeepImage () const =0 |
If this flag is true then the image will be kept even after calling Register. | |
virtual iObject * | QueryObject ()=0 |
Get the iObject for this texture. | |
virtual void | Register (iTextureManager *txtmng)=0 |
Register the texture with the texture manager, making a texture handle available. | |
virtual void | SetFlags (int flags)=0 |
Set the flags which are used to register the texture. | |
virtual void | SetImageFile (iImage *Image)=0 |
Change the base iImage. | |
virtual void | SetKeepImage (bool k)=0 |
Set the keep image flag. | |
virtual void | SetKeyColor (int red, int green, int blue)=0 |
Set the transparent color. | |
virtual void | SetTextureClass (const char *className)=0 |
Set the "class" of this texture. | |
virtual void | SetTextureHandle (iTextureHandle *tex)=0 |
Change the texture handle. | |
virtual void | SetUseCallback (iTextureCallback *callback)=0 |
Set a callback which is called just before the texture is used. | |
virtual void | Visit ()=0 |
Visit this texture. |
Detailed Description
A texture wrapper is an engine-level object that wraps around an actual texture (iTextureHandle).Every texture in the engine is represented by a texture wrapper, which keeps the pointer to the texture handle, its name, and possibly the base image object.
Main creators of instances implementing this interface:
- iEngine::CreateTexture()
- iEngine::CreateBlackTexture()
- iTextureList::NewTexture()
- iLoader::LoadTexture()
Main ways to get pointers to this interface:
- iEngine::FindTexture()
- iTextureList::Get()
- iTextureList::FindByName()
- iLoaderContext::FindTexture()
- iLoaderContext::FindNamedTexture()
- iMaterialEngine::GetTextureWrapper()
Main users of this interface:
Definition at line 73 of file texture.h.
Member Function Documentation
virtual iTextureWrapper* iTextureWrapper::Clone | ( | ) | const [pure virtual] |
Create a clone this texture wrapper, using the same texture handle.
virtual int iTextureWrapper::GetFlags | ( | ) | const [pure virtual] |
Return the flags which are used to register the texture.
virtual void iTextureWrapper::GetKeyColor | ( | int & | red, | |
int & | green, | |||
int & | blue | |||
) | const [pure virtual] |
Query the transparent color.
virtual const char* iTextureWrapper::GetTextureClass | ( | ) | [pure virtual] |
Get the "class" of this texture.
For more information, see iTextureHandle::GetTextureClass.
virtual iTextureHandle* iTextureWrapper::GetTextureHandle | ( | ) | [pure virtual] |
Get the texture handle.
A texture handle will be available after one of Register() or iEngine::Prepare() was called or a handle set manually with SetTextureHandle().
virtual iTextureCallback* iTextureWrapper::GetUseCallback | ( | ) | const [pure virtual] |
Get the use callback.
If there are multiple use callbacks you can use this function to chain.
virtual bool iTextureWrapper::IsVisitRequired | ( | ) | const [pure virtual] |
Return true if it is needed to call Visit().
virtual bool iTextureWrapper::KeepImage | ( | ) | const [pure virtual] |
If this flag is true then the image will be kept even after calling Register.
If this flag is false then Register() will remove the image pointer from this texture wrapper. False by default.
virtual void iTextureWrapper::Register | ( | iTextureManager * | txtmng | ) | [pure virtual] |
Register the texture with the texture manager, making a texture handle available.
virtual void iTextureWrapper::SetFlags | ( | int | flags | ) | [pure virtual] |
Set the flags which are used to register the texture.
virtual void iTextureWrapper::SetImageFile | ( | iImage * | Image | ) | [pure virtual] |
Change the base iImage.
The changes will not be visible until the texture is registered again.
virtual void iTextureWrapper::SetKeepImage | ( | bool | k | ) | [pure virtual] |
Set the keep image flag.
See KeepImage() function for explanation.
virtual void iTextureWrapper::SetKeyColor | ( | int | red, | |
int | green, | |||
int | blue | |||
) | [pure virtual] |
Set the transparent color.
virtual void iTextureWrapper::SetTextureClass | ( | const char * | className | ) | [pure virtual] |
Set the "class" of this texture.
For more information, see iTextureHandle::SetTextureClass.
virtual void iTextureWrapper::SetTextureHandle | ( | iTextureHandle * | tex | ) | [pure virtual] |
Change the texture handle.
The changes will immediatly be visible. This will also change the key color and registration flags to those of the new texture and the iImage to 0.
virtual void iTextureWrapper::SetUseCallback | ( | iTextureCallback * | callback | ) | [pure virtual] |
Set a callback which is called just before the texture is used.
This is mainly useful for procedural textures which can then choose to update their image.
virtual void iTextureWrapper::Visit | ( | ) | [pure virtual] |
Visit this texture.
This should be called by the engine right before using the texture. It is responsible for calling the use callback if there is one.
The documentation for this struct was generated from the following file:
- iengine/texture.h
Generated for Crystal Space 1.4.0 by doxygen 1.5.8