Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

XFcGLTextureBuilder Class Reference

Interface for a texture builder which creates texture surfaces as needed. More...

Inheritance diagram for XFcGLTextureBuilder:

Inheritance graph
[legend]
List of all members.

Public Member Functions

virtual XFCIMPORT INT32 getSurfaceCount ()=0
 Returns the number of surfaces required for this texture.

virtual XFCIMPORT void getSurfaceParams (INT32 aSurfaceNumber, INT32 &aWidth, INT32 &aHeight, INT32 &aFormat)=0
 Called for each surface to return the parameters for the surface.

virtual XFCIMPORT INT fillSurface (INT32 aSurfaceNumber, void *aBuffer, XFcGLComplexSurfaceResource *aComplexSurfaceResource)=0
 Called in order to fill the surfaces as needed.

virtual XFCIMPORT ~XFcGLTextureBuilder ()
 Virtual destructor.

XFCIMPORT INT equals (XFcGLTextureBuilder *aBuilder)
 Compares two XFcGLTextureBuilder classes.

virtual XFCIMPORT INT sameClassEquals (XFcGLTextureBuilder *aBuilder)=0
 Compares two XFcGLTextureBuilder-extended objects of the same class.


Public Attributes

UINT32 mBuilderUniqueId
 Used by equals() function to see if the classes are the same.

UINT32 mFlags
 Used by equals() function to see if flags are the same.


Detailed Description

Interface for a texture builder which creates texture surfaces as needed.

A texture builder object contains all information required to create the surfaces for the texture as needed. Since the resource manager may decide to discard the surface data whenever free memory is required, the texture builder will need to recreate the surface data when needed.

See also:
XFcGLTexture


Constructor & Destructor Documentation

virtual XFCIMPORT XFcGLTextureBuilder::~XFcGLTextureBuilder   [virtual]
 

Virtual destructor.


Member Function Documentation

XFCIMPORT INT XFcGLTextureBuilder::equals XFcGLTextureBuilder *    aBuilder
 

Compares two XFcGLTextureBuilder classes.

See also:
sameClassEquals
Parameters:
aBuilder texture builder to compare this builder against.
Returns:
non-zero if the builders are considered equal, or 0 if they are not equal.

virtual XFCIMPORT INT XFcGLTextureBuilder::fillSurface INT32    aSurfaceNumber,
void *    aBuffer,
XFcGLComplexSurfaceResource   aComplexSurfaceResource
[pure virtual]
 

Called in order to fill the surfaces as needed.

Parameters:
aSurfaceNumber surface number to fill in.
aBuffer destination pointer to fill the data in.
aComplexSurfaceResource pointer to the complex surface resource for surface.
Returns:
1 if successful, or 0 if unsuccessful.

Implemented in XFcGLTextureFromFile.

virtual XFCIMPORT INT32 XFcGLTextureBuilder::getSurfaceCount   [pure virtual]
 

Returns the number of surfaces required for this texture.

See also:
sameClassEquals

Implemented in XFcGLTextureFromFile.

virtual XFCIMPORT void XFcGLTextureBuilder::getSurfaceParams INT32    aSurfaceNumber,
INT32   aWidth,
INT32   aHeight,
INT32   aFormat
[pure virtual]
 

Called for each surface to return the parameters for the surface.

Parameters:
aSurfaceNumber number of the surface to get the parameters for.
aWidth returned width of the surface.
aHeight returned height of the surface.
aFormat returned format of the surface, see XFCGFXFORMAT.
See also:
XFCGFXFORMAT

Implemented in XFcGLTextureFromFile.

virtual XFCIMPORT INT XFcGLTextureBuilder::sameClassEquals XFcGLTextureBuilder *    aBuilder [pure virtual]
 

Compares two XFcGLTextureBuilder-extended objects of the same class.

The texture loading mechanism attempts to share resources between objects as much as possible, so that, for example, if an application loads a single texture from file several times, it is only allocated once (except if XFCTC_UNIQUE flag is used while creating the texture).

Parameters:
aBuilder texture builder to compare this builder against.
Returns:
non-zero if the builders are considered equal, or 0 if they are not equal.

Implemented in XFcGLTextureFromFile.


Member Data Documentation

UINT32 XFcGLTextureBuilder::mBuilderUniqueId
 

Used by equals() function to see if the classes are the same.

See also:
sameClassEquals

UINT32 XFcGLTextureBuilder::mFlags
 

Used by equals() function to see if flags are the same.

See also:
sameClassEquals

   
X-Forge Documentation
Confidential
Copyright © 2002-2003 Fathammer
   
Documentation generated
with doxygen
by Dimitri van Heesch