Public Types | Public Member Functions | Public Attributes

ISimpleFaceDataChannel Class Reference

Search for all occurrences

Detailed Description

The function-published interface for a simple per-face data channel.

Provides read/write access to a simple per-face data channel's description and data values. An instance of this mixin function-published interface can be obtained through the SimpleFaceDataManager or from the implementing object using GetInterface() and this interface's defined ID, SimpleFaceDataChannel_InterfaceID. Functions provided by this interface can also be called through function-publish dispatching and through Maxscript.

See also:
ISimpleFaceDataManager

#include <ISimpleFaceDataChannel.h>

Inheritance diagram for ISimpleFaceDataChannel:
Inheritance graph
[legend]

List of all members.

Public Types

enum   {
  eFpGetChannelName, eFpSetChannelName, eFpGetChannelID, eFpGetChannelType,
  eFpGetNumFaces, eFpGetValue, eFpSetValue, eFpGetValues,
  eFpSetValues, eFpGetValueBySelection, eFpSetValueBySelection, eFpChannelTypeEnum
}
 

Function-publish IDs for the SimpleFaceData Channel functions.

More...

Public Member Functions

BEGIN_FUNCTION_MAP  PROP_FNS (eFpGetChannelName, GetChannelName, eFpSetChannelName, SetChannelName, TYPE_STRING)
  RO_PROP_FN (eFpGetChannelID, ChannelID, TYPE_DWORD_TAB_BV) RO_PROP_FN(eFpGetChannelType
TYPE_ENUM  RO_PROP_FN (eFpGetNumFaces, NumFaces, TYPE_DWORD) FN_1(eFpGetValue
TYPE_ENUM TYPE_INDEX  FN_2 (eFpSetValue, TYPE_BOOL, SetValue, TYPE_INDEX, TYPE_VALUE) FN_0(eFpGetValues
TYPE_ENUM TYPE_INDEX GetValues  FN_1 (eFpSetValues, TYPE_BOOL, SetValues, TYPE_VALUE) FN_1(eFpGetValueBySelection
TYPE_ENUM TYPE_INDEX GetValues
TYPE_BITARRAY 
FN_2 (eFpSetValueBySelection, TYPE_BOOL, SetValueBySelection, TYPE_BITARRAY, TYPE_VALUE) END_FUNCTION_MAPvirtual void SetChannelName(const MCHAR *pName)=0
  Set the name of the channel. (C++, Maxscript)
virtual MCHAR *  GetChannelName ()=0
  Get the name of the channel. (C++, Maxscript)
virtual Class_ID  GetChannelID ()=0
  Get the channel ID of this channel. (C++)
virtual Tab< DWORD >  ChannelID ()=0
  Get the channel ID of this channel. (Maxscript)
virtual ULONG  NumFaces ()=0
  Get the number of faces in this channel.
virtual int  ChannelType ()=0
  Get the data type of the channel.
virtual FPValue  GetValue (ULONG face)=0
  Get a face's per-face data value.
virtual BOOL  SetValue (ULONG face, Value *pVal)=0
  Set a face's per-face data value.
virtual FPValue  GetValues ()=0
  Get the entire list of per-face data values for the channel.
virtual BOOL  SetValues (Value *pVal)=0
  Set the value of each face in the channel.
virtual FPValue  GetValueBySelection (const BitArray *pFaces)=0
  Get the per-face value of a selection of faces.
virtual BOOL  SetValueBySelection (const BitArray *pFaces, Value *pVal)=0
  Set the per-face value of a selection of faces.

Public Attributes

  ChannelType
TYPE_ENUM  TYPE_FPVALUE_BV
TYPE_ENUM  GetValue
TYPE_ENUM TYPE_INDEX  TYPE_FPVALUE_BV
TYPE_ENUM TYPE_INDEX GetValues  TYPE_FPVALUE_BV
TYPE_ENUM TYPE_INDEX GetValues  GetValueBySelection

Member Enumeration Documentation

anonymous enum

Function-publish IDs for the SimpleFaceData Channel functions.

Enumerator:
eFpGetChannelName 
eFpSetChannelName 
eFpGetChannelID 
eFpGetChannelType 
eFpGetNumFaces 
eFpGetValue 
eFpSetValue 
eFpGetValues 
eFpSetValues 
eFpGetValueBySelection 
eFpSetValueBySelection 
eFpChannelTypeEnum 
         {
        eFpGetChannelName,  // get the channel's name
        eFpSetChannelName,  // set the channel's name
        eFpGetChannelID,    // get the identifying channel id
        eFpGetChannelType,  // get the channel's data type
        eFpGetNumFaces,     // get the number of faces in the channel
        eFpGetValue,        // get a specific face value
        eFpSetValue,        // set a specific face value
        eFpGetValues,       // get all face values
        eFpSetValues,       // set all face values
        eFpGetValueBySelection,     // get the value of a selection of faces
        eFpSetValueBySelection,     // set the value of a selection of faces

        eFpChannelTypeEnum, // the function-published channel-type enum
    };

Member Function Documentation

BEGIN_FUNCTION_MAP PROP_FNS ( eFpGetChannelName  ,
GetChannelName  ,
eFpSetChannelName  ,
SetChannelName  ,
TYPE_STRING   
)
RO_PROP_FN ( eFpGetChannelID  ,
ChannelID  ,
TYPE_DWORD_TAB_BV   
)
TYPE_ENUM RO_PROP_FN ( eFpGetNumFaces  ,
NumFaces  ,
TYPE_DWORD   
)
TYPE_ENUM TYPE_INDEX FN_2 ( eFpSetValue  ,
TYPE_BOOL  ,
SetValue  ,
TYPE_INDEX  ,
TYPE_VALUE   
)
TYPE_ENUM TYPE_INDEX GetValues FN_1 ( eFpSetValues  ,
TYPE_BOOL  ,
SetValues  ,
TYPE_VALUE   
)
TYPE_ENUM TYPE_INDEX GetValues TYPE_BITARRAY FN_2 ( eFpSetValueBySelection  ,
TYPE_BOOL  ,
SetValueBySelection  ,
TYPE_BITARRAY  ,
TYPE_VALUE   
) const [pure virtual]

Set the name of the channel. (C++, Maxscript)

Change the name of the channel to the specified string.

Parameters:
[in] pName - The new name of the channel. Must be non-null.
virtual MCHAR* GetChannelName ( ) [pure virtual]

Get the name of the channel. (C++, Maxscript)

Gets the name of the channel.

Returns:
A pointer to the string buffer containing the channel's name.
virtual Class_ID GetChannelID ( ) [pure virtual]

Get the channel ID of this channel. (C++)

Gets the identifying channel ID of this channel. The channel's ID cannot be changed after it has been created.

Returns:
The Class_ID that identifies this channel.
virtual Tab<DWORD> ChannelID ( ) [pure virtual]

Get the channel ID of this channel. (Maxscript)

The maxscript exposed wrapper for ChannelID(). The only difference is that the channel ID is returned as a 2 element array of DWORDS.

See also:
GetChannelID (C++)
virtual ULONG NumFaces ( ) [pure virtual]

Get the number of faces in this channel.

Gets the number of per-face data items in this channel. The number of items in the channel will always match the number of faces on the object.

Returns:
The number of faces in this channel. 0 if an error occurred.
virtual int ChannelType ( ) [pure virtual]

Get the data type of the channel.

Gets the data type of per-face data items in this channel. The channel's type cannot be changed after it has been created.

Returns:
The ParamType or ParamType2 enum value that corresponds to the channel's data type.
virtual FPValue GetValue ( ULONG  face ) [pure virtual]

Get a face's per-face data value.

Gets the value of the specified face's per-face data.

Parameters:
[in] face - The target face's 0-based index.
Returns:
An FPValue that wraps the face's per-face data. An FPValue wrapping NULL is returned if the per-face data item could not be found.
virtual BOOL SetValue ( ULONG  face,
Value pVal 
) [pure virtual]

Set a face's per-face data value.

Sets the value of the specified face's per-face data.

Parameters:
[in] face - The target face's 0-based index.
[in] pVal - The new Value of the face's per-face data. Must be non-null, loaded, and the type must match the channel type.
Returns:
TRUE if the specified face value is set, FALSE otherwise.
virtual FPValue GetValues ( ) [pure virtual]

Get the entire list of per-face data values for the channel.

Get a copy of the entire array of per-face data values for this channel.

Returns:
An FPValue that wraps an array of per-face data items. An FPValue wrapping NULL is returned if the per-face data item could not be found.
virtual BOOL SetValues ( Value pVal ) [pure virtual]

Set the value of each face in the channel.

Sets the value of each face in the channel to a new value specified in an array.

Parameters:
[in] pVal - A Value that wraps an array of per-face data items that specify the channel's new per-face data values. Must be non-null, loaded, and the type must match the channel type. The array and the channel must have an equal number of data elements.
Returns:
TRUE if the specified face values were set, FALSE otherwise.
virtual FPValue GetValueBySelection ( const BitArray pFaces ) [pure virtual]

Get the per-face value of a selection of faces.

Gets the common per-face value of a selection of faces specified by a BitArray.

Parameters:
[in] pFaces - A BitArray that indicates the face selection. Must be non-null. This selection array must have fewer or an equal number of elements as the data channel.
Returns:
An FPValue that wraps the selection's per-face value. An FPValue wrapping NULL is returned if the selected faces don't have a matching value or no selection was specified.
virtual BOOL SetValueBySelection ( const BitArray pFaces,
Value pVal 
) [pure virtual]

Set the per-face value of a selection of faces.

Sets the per-face value of the specified selection of faces to a new specified value.

Parameters:
[in] pFaces - A BitArray that indicates the face selection. Must be non-null. This selection array must have fewer or an equal number of elements as the data channel.
[in] pVal- The new Value of the faces' per-face data. Must be non-null, loaded, and the type must match the channel type.
Returns:
TRUE if the per-face data values were set, FALSE otherwise.

Member Data Documentation

TYPE_ENUM TYPE_FPVALUE_BV
TYPE_ENUM GetValue
TYPE_ENUM TYPE_INDEX TYPE_FPVALUE_BV
TYPE_ENUM TYPE_INDEX GetValues TYPE_FPVALUE_BV
TYPE_ENUM TYPE_INDEX GetValues GetValueBySelection

ISimpleFaceDataChannel ISimpleFaceDataChannel ISimpleFaceDataChannel ISimpleFaceDataChannel ISimpleFaceDataChannel ISimpleFaceDataChannel ISimpleFaceDataChannel ISimpleFaceDataChannel ISimpleFaceDataChannel ISimpleFaceDataChannel
ISimpleFaceDataChannel ISimpleFaceDataChannel ISimpleFaceDataChannel ISimpleFaceDataChannel ISimpleFaceDataChannel ISimpleFaceDataChannel ISimpleFaceDataChannel ISimpleFaceDataChannel ISimpleFaceDataChannel ISimpleFaceDataChannel