The function-published interface for managing SimpleFaceData channels on an object.
This manager allows simple per-face data channels to be added, removed and retrieved from the specified editable mesh or poly object. This static function-published interface is registered as a core interface. Obtain a pointer to this interface with GetInterface() using its defined ID, SimpleFaceDataManger_InterfaceID. Functions provided by this interface can also be called through function-publish dispatching and through Maxscript.
#include <ISimpleFaceDataManager.h>
Public Types |
|
enum | { eFpAddChannel, eFpRemoveChannel, eFpGetChannel, eFpGetChannels, eFpChannelTypeEnum } |
Function-publish IDs for the SimpleFaceData Manager functions. More... |
|
Public Member Functions |
|
virtual ISimpleFaceDataChannel * | AddChannel (Object *pObj, int type, const Class_ID *pChannelID, const MCHAR *pChannelName) const =0 |
Add a simple per-face data channel to a
geometry object (C++). |
|
virtual ISimpleFaceDataChannel * | AddChannel (Object *pObj, int type, const Tab< DWORD > *pChannelID, const MCHAR *pChannelName) const =0 |
Add a simple per-face data channel to the
specified geometry object (Maxscript). |
|
virtual void | RemoveChannel (Object *pObj, const Class_ID &channelID)=0 |
Remove a simple per-face data channel from a
geometry object (C++). |
|
virtual void | RemoveChannel (Object *pObj, const Tab< DWORD > *pChannelID)=0 |
Remove a simple per-face data channel from a
geometry object (Maxscript). |
|
virtual ISimpleFaceDataChannel * | GetChannel (Object *pObj, const Tab< DWORD > *pChannelID) const =0 |
Get a simple per-face data channel from a
geometry object (C++). |
|
virtual ISimpleFaceDataChannel * | GetChannel (Object *pObj, const Class_ID &channelID) const =0 |
Get a simple per-face data channel from a
geometry object (Maxscript). |
|
virtual
Tab < ISimpleFaceDataChannel * > |
GetChannels (Object *pObj) const =0 |
Get all simple per-face data channels from a
geometry object (C++, Maxscript). |
anonymous enum |
Function-publish IDs for the SimpleFaceData Manager functions.
{ eFpAddChannel, // Add a channel to this object eFpRemoveChannel, // Remove a channel from this object eFpGetChannel, // Get a channel on this object eFpGetChannels, // Get an array of all channels on this object eFpChannelTypeEnum, // ID for the function-published channel-type enum. };
virtual ISimpleFaceDataChannel* AddChannel | ( | Object * | pObj, |
int | type, | ||
const Class_ID * | pChannelID, | ||
const MCHAR * | pChannelName | ||
) | const [pure virtual] |
Add a simple per-face data channel to a geometry object (C++).
A new per-face data channel of the specified type with an identifying ID and name is added to specified object's base object. Per-face data channels are geometry pipeline clients - adding a channel to an object adds the channel throughout the entire modifier stack.
[in] | pObj | - The target geometry object. Must be non-null. Only editable mesh and editable poly objects are currently supported. |
[in] | type | - A ParamType or ParamType2 enum value that specifies the data
type for all faces within the data channel. The current list of
supported types is:
|
[in] | pChannelID | - The identifying Class_ID of the new channel. Specify NULL to have a unique ID generated and assigned to the new channel. If an ID is specified, no channel is added if a channel with the specified ID already exists. |
[in] | pChannelName | - The name of the new channel. Specify NULL to use a default channel name. |
virtual ISimpleFaceDataChannel* AddChannel | ( | Object * | pObj, |
int | type, | ||
const Tab< DWORD > * | pChannelID, | ||
const MCHAR * | pChannelName | ||
) | const [pure virtual] |
Add a simple per-face data channel to the specified geometry object (Maxscript).
The maxscript exposed wrapper for AddChannel(). The only difference is that this channel ID is specified as a 2 element array of DWORDS.
Remove a simple per-face data channel from a geometry object (C++).
Remove the per-face data channel on the specified object's base object that matches the specified channel ID. The channel is removed throughout the entire modifier stack.
[in] | pObj | - The target geometry object. Must be non-null. |
[in] | channelID | - The identifying Class_ID of the channel to remove. |
Remove a simple per-face data channel from a geometry object (Maxscript).
The maxscript exposed wrapper for RemoveChannel(). The only difference is that the channel ID is specified as a 2 element array of DWORDS.
virtual ISimpleFaceDataChannel* GetChannel | ( | Object * | pObj, |
const Tab< DWORD > * | pChannelID | ||
) | const [pure virtual] |
Get a simple per-face data channel from a geometry object (C++).
Obtain a pointer to the per-face data channel on the specified object that matches the specified channel ID.
[in] | pObj | - The target geometry object. Must be non-null. |
[in] | pChannelID | - The identifying Class_ID of the channel to retrieve. |
virtual ISimpleFaceDataChannel* GetChannel | ( | Object * | pObj, |
const Class_ID & | channelID | ||
) | const [pure virtual] |
Get a simple per-face data channel from a geometry object (Maxscript).
The maxscript exposed wrapper for GetChannel(). The only difference is that this channel ID is specified as a 2 element array of DWORDS.
virtual Tab<ISimpleFaceDataChannel*> GetChannels | ( | Object * | pObj | ) | const [pure virtual] |
Get all simple per-face data channels from a geometry object (C++, Maxscript).
Obtain an array of pointers to all simple per-face data channels on the specified object.
[in] | pObj | - The target geometry object. Must be non-null. |