CrystalSpace

Public API Reference

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>

Inheritance diagram for iTextureWrapper:

Inheritance graph
[legend]
List of all members.

Public Member Functions

virtual iTextureWrapperClone () 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 iImageGetImageFile ()=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 iTextureHandleGetTextureHandle ()=0
 Get the texture handle.
virtual iTextureCallbackGetUseCallback () 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 iObjectQueryObject ()=0
 Get the iObject for this texture.
virtual void Register (iTextureManager *txtmng)=0
 Register the texture with the texture manager.
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:

Main ways to get pointers to this interface:

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.

Implemented in csProcTexture.

virtual int iTextureWrapper::GetFlags (  )  const [pure virtual]

Return the flags which are used to register the texture.

Implemented in csProcTexture.

virtual iImage* iTextureWrapper::GetImageFile (  )  [pure virtual]

Get the iImage.

Implemented in csProcTexture.

virtual void iTextureWrapper::GetKeyColor ( int &  red,
int &  green,
int &  blue 
) const [pure virtual]

Query the transparent color.

Implemented in csProcTexture.

virtual const char* iTextureWrapper::GetTextureClass (  )  [pure virtual]

Get the "class" of this texture.

For more information, see iTextureHandle::GetTextureClass.

Implemented in csProcTexture.

virtual iTextureHandle* iTextureWrapper::GetTextureHandle (  )  [pure virtual]

Get the texture handle.

Implemented in csProcTexture.

virtual iTextureCallback* iTextureWrapper::GetUseCallback (  )  const [pure virtual]

Get the use callback.

If there are multiple use callbacks you can use this function to chain.

Implemented in csProcTexture.

virtual bool iTextureWrapper::IsVisitRequired (  )  const [pure virtual]

Return true if it is needed to call Visit().

Implemented in csProcTexture.

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.

Implemented in csProcTexture.

virtual iObject* iTextureWrapper::QueryObject (  )  [pure virtual]

Get the iObject for this texture.

Implemented in csProcTexture.

virtual void iTextureWrapper::Register ( iTextureManager txtmng  )  [pure virtual]

Register the texture with the texture manager.

Implemented in csProcTexture.

virtual void iTextureWrapper::SetFlags ( int  flags  )  [pure virtual]

Set the flags which are used to register the texture.

Implemented in csProcTexture.

virtual void iTextureWrapper::SetImageFile ( iImage Image  )  [pure virtual]

Change the base iImage.

The changes will not be visible until the texture is registered again.

Implemented in csProcTexture.

virtual void iTextureWrapper::SetKeepImage ( bool  k  )  [pure virtual]

Set the keep image flag.

See KeepImage() function for explanation.

Implemented in csProcTexture.

virtual void iTextureWrapper::SetKeyColor ( int  red,
int  green,
int  blue 
) [pure virtual]

Set the transparent color.

Implemented in csProcTexture.

virtual void iTextureWrapper::SetTextureClass ( const char *  className  )  [pure virtual]

Set the "class" of this texture.

For more information, see iTextureHandle::SetTextureClass.

Implemented in csProcTexture.

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.

Implemented in csProcTexture.

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.

Implemented in csProcTexture.

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.

Implemented in csProcTexture.


The documentation for this struct was generated from the following file:
Generated for Crystal Space by doxygen 1.4.7