CrystalSpace

Public API Reference

Main Page   Modules   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members   Related Pages  

iTextureWrapper Struct Reference
[Textures & Materials]

A texture wrapper is an engine-level object that wraps around an actual texture (iTextureHandle). More...

#include <texture.h>

Inheritance diagram for iTextureWrapper:

iBase List of all members.

Public Methods

virtual iObject * QueryObject ()=0
 Get the iObject for this texture.

virtual iTextureWrapper * Clone () const=0
 Create a clone this texture wrapper, using the same texture handle.

virtual void SetImageFile (iImage *Image)=0
 Change the base iImage.

virtual iImage * GetImageFile ()=0
 Get the iImage.

virtual void SetTextureHandle (iTextureHandle *tex)=0
 Change the texture handle.

virtual iTextureHandle * GetTextureHandle ()=0
 Get the texture handle.

virtual void SetKeyColor (int red, int green, int blue)=0
 Set the transparent color.

virtual void GetKeyColor (int &red, int &green, int &blue)=0
 Query the transparent color.

virtual void SetFlags (int flags)=0
 Set the flags which are used to register the texture.

virtual int GetFlags ()=0
 Return the flags which are used to register the texture.

virtual void Register (iTextureManager *txtmng)=0
 Register the texture with the texture manager.

virtual void SetUseCallback (iTextureCallback *callback)=0
 Set a callback which is called just before the texture is used.

virtual iTextureCallback * GetUseCallback ()=0
 Get the use callback.

virtual void Visit ()=0
 Visit this texture.

virtual bool IsVisitRequired () const=0
 Return true if it is needed to call Visit().

virtual void SetKeepImage (bool k)=0
 Set the keep image flag.

virtual bool KeepImage () const=0
 If this flag is true then the image will be kept even after calling Register.


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 77 of file texture.h.


Member Function Documentation

virtual iTextureWrapper* iTextureWrapper::Clone (    )  [pure virtual]
 

Create a clone this texture wrapper, using the same texture handle.

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

Return the flags which are used to register the texture.

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

Get the iImage.

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

Query the transparent color.

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

Get the texture handle.

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

Get the use callback.

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

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

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

virtual bool iTextureWrapper::KeepImage (    )  [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 iObject* iTextureWrapper::QueryObject (    )  [pure virtual]
 

Get the iObject for this texture.

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

Register the texture with the texture manager.

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::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:
Generated for Crystal Space by doxygen 1.2.18