IFXNeighborFace

The IFXNeighborFace interface defines neighbor mesh faces and flag data structures. The corner and face flags are shared across different technologies. The neighbor mesh resolution controller uses the named flags.

Interface Method

Description

IFXNeighborFace

Initializes the object for use

~IFXNeighborFace

Class destructor

GetNeighbor

Gets neighbor mesh links for a corner on the current face

SetNeighbor

Sets neighbor mesh links for a corner on the current face

SetNeighbor

Sets neighbor mesh links for a corner on the current face

GetFaceFlags

Gets face flags for the current face

SetFaceFlags

Sets face flags for the current face

GetCornerFlags

Gets flags for a corner

SetCornerFlags

Sets flags for a corner


IFXNeighborFace::IFXNeighborFace()

Constructor. Fast initialization by IFXNeighborMesh.

Parameters:

None

Return Values:

None


IFXNeighborFace::~IFXNeighborFace()

Deconstructor.

Parameters:

None

Return Values:

None


IFXNeighborFace::GetNeighbor( U32 corner, U32* pNeighborMesh, U32* pNeighborFace, IFXCornerFlags** ppFlags)

Gets the face index of the next face in the circular-linked list of faces around the edge identified by cornerIndex (the edge opposite the corner).

If there are no neighbor faces on the identified edge (as in the outermost extent of the mesh), this is best visualized as one face in the circular-linked list of faces around the edge. Thus, the current face index is returned.

Parameters:

corner

Corner index on current face

pNeighborMesh

Mesh index of neighbor face

pNeighborFace

Face index of neighbor face

ppFlags

Corner flags

Return Values:

None


IFXNeighborFace::SetNeighbor( U32 corner, U32 neighborMesh, U32 NeighborFace, IFXCornerFlags Flags)

Sets neighbor mesh links for a corner on the current face

Parameters:

corner

Corner index on current face, must be 0, 1, or 2

NeighborMesh

Mesh index of neighbor face

NeighborFace

Face index of neighbor face

Flags

Corner flags

Return Values:

None


IFXNeighborFace::SetNeighbor(U32 corner, U32 NeighborMesh, U32 NeighborFace, U32 NeighborCorner)

Sets neighbor mesh links for a corner on the current face

Parameters:

corner

Corner index on current face

NeighborMesh

Mesh index of neighbor face

NeighborFace

Face index of neighbor face

neighborCorner

Corner index of neighbor face

Return Values:

None


IFXNeighborFace::GetFaceFlags()

Get face flags for the current face.

Parameters:

None

Return Values:

IFXFaceFlags*


IFXNeighborFace::SetFaceFlags(IFXFaceFlags flags)

Set flags for the current face.

Parameters:

flags

Returns an IFXFaceFlag

Return Values:

None


IFXNeighborFace::GetCornerFlags(U32 corner)

Get flags for a corner.

Parameters:

corner

Returns a corner number

Return Values:

IFXCornerFlags*


IFXNeighborFace::SetCornerFlags( U32 corner, IFXCornerFlags flags)

Sets flags for a corner.

Parameters:

corner

Returns a corner number

flags

Returns the flag

Return Values:

None


IFX_NEIGHBOR_HUGE

U32 m_neighborMesh[3];//neighbor index

U32 m_neighborFace[3];//neighbor face indices

IFXCornerFlags m_cornerFlags[3];// corner flags

IFXFaceFlags m_faceFlags;// face flags

Compact:

U16 m_neighborMesh[3];// neighbor index

U16 m_neighborFace[3];// neighbor face indices

IFXCornerFlags m_cornerFlags[3];// corner flags

IFXFaceFlags m_faceFlags;// face flags

 

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