Public Member Functions

IFaceDataMgr Class Reference

Search for all occurrences

Detailed Description

See also:
Class BaseInterface, Class IDataChannel, Class IFaceDataChannel

Description:
This class is available in release 4.0 and later only.

This class represents an interface for managing per-face-data. Geometric objects that wish to support multiple per-face-data channels should implement this interface. Both Mesh and MNMesh support the IFaceDataMgr interface. They have full control over the lifetime of the face-data manager they expose. Consequently, client code should not cache an IFaceDataMgr interface aquired from Mesh or MNMesh for later use.

#include <ifacedatamgr.h>

Inheritance diagram for IFaceDataMgr:
Inheritance graph
[legend]

List of all members.

Public Member Functions

virtual ULONG  NumFaceDataChans () const =0
virtual IFaceDataChannel GetFaceDataChan (const Class_ID &ID) const =0
virtual BOOL  AddFaceDataChan (IFaceDataChannel *pChan)=0
virtual BOOL  RemoveFaceDataChan (const Class_ID &ID)=0
virtual BOOL  AppendFaceDataChan (const IFaceDataChannel *pChan)=0
virtual BOOL  CopyFaceDataChans (const IFaceDataMgr *pFrom)=0
virtual void  RemoveAllFaceDataChans ()=0
virtual BOOL  EnumFaceDataChans (IFaceDataChannelsEnumCallBack &cb, void *pContext) const =0
virtual IOResult  Save (ISave *isave)=0
virtual IOResult  Load (ILoad *iload)=0
virtual Interface_ID  GetID ()

Member Function Documentation

virtual ULONG NumFaceDataChans ( ) const [pure virtual]
Remarks:
This method returns the number of face-data channels.
virtual IFaceDataChannel* GetFaceDataChan ( const Class_ID ID ) const [pure virtual]
Remarks:
This method returns a pointer to the face-data channel.
Parameters:
const Class_ID& ID

The class ID of the channel you wish to retrieve.
virtual BOOL AddFaceDataChan ( IFaceDataChannel pChan ) [pure virtual]
Remarks:
This method adds a face-data channel to the object.
Parameters:
IFaceDataChannel* pChan

A pointer to the face-data channel.
Returns:
TRUE if successful, otherwise FALSE.
virtual BOOL RemoveFaceDataChan ( const Class_ID ID ) [pure virtual]
Remarks:
This method removes a face-data channel from the object.
Parameters:
const Class_ID& ID

The class ID of the channel you wish to remove.
Returns:
TRUE if successful, otherwise FALSE.
virtual BOOL AppendFaceDataChan ( const IFaceDataChannel pChan ) [pure virtual]
Remarks:
This method appends a face-data channel to the object.
Parameters:
const IFaceDataChannel* pChan

The face-data channel to append.
Returns:
TRUE if successful, otherwise FALSE.
virtual BOOL CopyFaceDataChans ( const IFaceDataMgr pFrom ) [pure virtual]
Remarks:
This method adds or appends face-data channels from the from object, to this object If the channel already exists on this object, it's appended otherwise it gets added.
Parameters:
const IFaceDataMgr* pFrom

The face-data channel to copy from.
Returns:
TRUE if successful, otherwise FALSE.
virtual void RemoveAllFaceDataChans ( ) [pure virtual]
Remarks:
This method removes all face-data channels from this object.
virtual BOOL EnumFaceDataChans ( IFaceDataChannelsEnumCallBack cb,
void *  pContext 
) const [pure virtual]
Remarks:
This method provides a mechanism for executing an operation for all face-data-channels on this object: For all face-data-channels calls IFaceDataEnumCallBack::proc() with a pointer to that face-data- channel and a context data
Parameters:
IFaceDataChannelsEnumCallBack& cb

A pointer to the face-data channel enumerator callback.

void* pContext

A pointer to the context data.
Returns:
FALSE if the callback returns FALSE for any of the face-data channels.
virtual IOResult Save ( ISave isave ) [pure virtual]
Remarks:
Saves the face-data to the max file.
See also:
I/O Results.
virtual IOResult Load ( ILoad iload ) [pure virtual]
Remarks:
Loads the face-data from the max file.
See also:
I/O Results
virtual Interface_ID GetID ( ) [inline, virtual]
Remarks:
This method returns the interface ID of the object.
Default Implementation:
{ return FACEDATAMGR_INTERFACE; }

Reimplemented from BaseInterface.

{ return FACEDATAMGR_INTERFACE; }

IFaceDataMgr IFaceDataMgr IFaceDataMgr IFaceDataMgr IFaceDataMgr IFaceDataMgr IFaceDataMgr IFaceDataMgr IFaceDataMgr IFaceDataMgr
IFaceDataMgr IFaceDataMgr IFaceDataMgr IFaceDataMgr IFaceDataMgr IFaceDataMgr IFaceDataMgr IFaceDataMgr IFaceDataMgr IFaceDataMgr