IFXUpdatesGroup

The IFXUpdatesGroup interface groups multiresolution updates. The update group is typically associated with a mesh group in parallel array fashion.

The IFXUpdatesGroup and IFXUpdates structures are integral elements of the material partitioned and vertex array organization of the IFXMeshGroup and IFXMesh structures. Vertices that lie on a material boundary are shared by at least two faces with different material associations. These vertices are replicated and exist in the IFXMesh objects for each of the two materials. Changes in vertex resolution are done in terms of "units" rather than vertices. For vertices on the interior of an IFXMesh, a unit constitutes one vertex. However, for those vertices shared by more than one IFXMesh, the unit represents all of those shared vertices. The bookkeeping that maps units to vertices is kept in the "sync" tables structure owned by the IFXUpdatesGroup object.

All of the internal bookkeeping is managed transparently to the user if the IFXMultiResManager class is used for changing the resolution of the mesh.

Interface Method

Description

GetNumUpdates

Gets the number of update records

GetUpdates

Gets the update records

SetUpdates

Returns the update records

SetSyncTable

Sets data that allows resolution of each material to synchronize

GetSyncTable

Gets data that allows resolution of each material to synchronize

Allocate

Allocates memory for the update record

GetInterface

Gets the update record interface

IFXUpdatesGroup

Class constructor

~IFXUpdatesGroup

Class destructor

GetMaxResolution

Gets the maximum resolution value

GetFinalMaxResolution

Gets the final maximum resolution value

SetMaxResolution

Sets the maximum resolution value

SetFinalMaxResolution

Sets the final maximum resolution value


IFXUpdatesGroup::GetNumUpdates()

This method gets the number of update records.

Parameters:

None

Return Values:

U32


IFXUpdatesGroup::GetUpdates(U32 index)

Parameters:

index

Index number for update record

Return Values:

IFXUpdates*


IFXUpdatesGroup::SetUpdates(U32 index, IFXUpdates* pUpdates)

This method returns updates that were passed in.

Parameters:

index

Index number for update record

pUpdates

Pointer to the IFXUpdates

Return Values:

IFXUpdates*


IFXUpdatesGroup::SetSyncTable(U32 index, U32* pTable)

This method sets data that allows resolution of each material to synchronize.

Parameters:

index

Index number for update record

pTable

Pointer to the Sync table

Return Values:

U32*


IFXUpdatesGroup::GetSyncTable(U32 index)

This method gets data that allows resolution of each material to synchronize

Parameters:

index

Index number for update record

Return Values:

U32*


IFXUpdatesGroup::Allocate(U32 numUpdates)

Parameters:

numUpdates

Number of update records

Return Values


IFXUpdatesGroup::GetInterface(U32 interfaceIdentifier, void** pInterface)

Parameters:

interfaceIdentifier

Interface ID number

pInterface

Pointer to the interface

Return Values


IFXUpdatesGroup::IFXUpdatesGroup()

Class constructor.

Parameters:

None

Return Values:

None


IFXUpdatesGroup::~IFXUpdatesGroup()

Class destructor.

Parameters:

None

Return Values:

None


IFXUpdatesGroup::GetMaxResolution ()

This method gets the maximum resolution value.

Parameters:

None

Return Values:

U32


IFXUpdatesGroup::GetFinalMaxResolution()

This method gets the final maximum resolution value.

Parameters:

None

Return Values:

U32


IFXUpdatesGroup::SetMaxResolution(U32 max)

This method sets the maximum resolution.

Parameters:

max

Maximum resolution value

Return Values:

None


IFXUpdatesGroup::SetFinalMaxResolution(U32 max)

This method sets the final maximum resolution.

Parameters:

max

Final maximum resolution value

Return Values:

None

 

§See asterisked (*) statement at Legal Information © 2001 Intel Corporation.