Public Types | Public Member Functions | Protected Member Functions

MFnArrayAttrsData Class Reference

Search for all occurrences

Detailed Description

Function set for multiple arrays of attributes for dependency node data.

MFnArrayAttrsData allows the creation and manipulation of multiple arrays of attributes as a data object over a single connection for use as dependency graph data.

If a user written dependency node either accepts or produces MFnArrayAttrsData, then this class is used to extract or create the data that comes from or goes to other dependency graph nodes. The MDataHandle::type method will return kDynArrayAttrsData when data of this type is present. To access it, the MDataHandle::data() method is used to get an MObject for the data and this should then be used to initialize an instance of MFnArrayAttrsData.

NOTE: these data attributes are not storable.

Examples:

dynExprField.cpp, ownerEmitter.cpp, ownerEmitter.h, simpleEmitter.cpp, simpleEmitter.h, simpleFluidEmitter.h, sweptEmitter.cpp, and sweptEmitter.h.

#include <MFnArrayAttrsData.h>

Inheritance diagram for MFnArrayAttrsData:
Inheritance graph
[legend]

List of all members.

Public Types

enum   Type {
  kInvalid, kVectorArray, kDoubleArray, kIntArray,
  kStringArray, kLast
}
 

Types of dependency graph data.

More...

Public Member Functions

virtual MFn::Type  type () const
  Function set type.
virtual  ~MFnArrayAttrsData ()
  Destructor.
  MFnArrayAttrsData ()
  Default constructor.
  MFnArrayAttrsData (MObject &object, MStatus *ReturnStatus=NULL)
  Constructor.
MStatus  clear ()
  Clear the contents of all of the arrays.
unsigned int  count () const
  Returns the number of attribute arrays.
MStringArray  list (MStatus *ReturnStatus=NULL) const
  Returns a list of names for the attribute arrays.
bool  checkArrayExist (const MString attrName, MFnArrayAttrsData::Type &arrayType, MStatus *ReturnStatus=NULL)
  Check if the attribute array related to the given name has been created.
MVectorArray  vectorArray (const MString attrName, MStatus *ReturnStatus=NULL)
  Return an MVectorArray containing the vector array currently operated upon by the function set.
MDoubleArray  doubleArray (const MString attrName, MStatus *ReturnStatus=NULL)
  Return an MDoubleArray containing the double array currently operated upon by the function set.
MIntArray  intArray (const MString attrName, MStatus *ReturnStatus=NULL)
  Return an MIntArray containing the int array currently operated upon by the function set.
MStringArray  stringArray (const MString attrName, MStatus *ReturnStatus=NULL)
  Return an MStringArray containing the string array currently operated upon by the function set.
MObject  create (MStatus *ReturnStatus=NULL)
  Create a new MObject, attach it to this instance, and initialize it to be empty.
MVectorArray  getVectorData (const MString attrName, MStatus *ReturnStatus=NULL)
  Return an MVectorArray containing the vector array currently operated upon by the function set.
MDoubleArray  getDoubleData (const MString attrName, MStatus *ReturnStatus=NULL)
  Return an MDoubleArray containing the double array currently operated upon by the function set.
MIntArray  getIntData (const MString attrName, MStatus *ReturnStatus=NULL)
  Return an MIntArray containing the int array currently operated upon by the function set.
MStringArray  getStringData (const MString attrName, MStatus *ReturnStatus=NULL)
  Return an MStringArray containing the string array currently operated upon by the function set.
  MFnArrayAttrsData (const MObject &object, MStatus *ReturnStatus=NULL)
  NO SCRIPT SUPPORT.

Protected Member Functions

virtual const char *  className () const
  Class name.

Member Enumeration Documentation

enum Type

Types of dependency graph data.

Enumerator:
kInvalid 

Invalid value.

kVectorArray 

use vectorArray() method to extract the attribute array.

kDoubleArray 

use doubleArray() method to extract the attribute array.

kIntArray 

use intArray() method to extract the attribute array.

kStringArray 

use stringArray() method to extract the attribute array.

kLast 

Last value.

It does not represent real data, but can be used to loop on all possible types

Reimplemented from MFnData.


Constructor & Destructor Documentation

MFnArrayAttrsData ( MObject object,
MStatus ReturnStatus = NULL 
)

Constructor.

Class constructor that initializes the function set to the given MObject.

Parameters:
[in] object The MObject to attach the function set to
[out] ReturnStatus the return status
Status Codes:
MFnArrayAttrsData ( const MObject object,
MStatus ReturnStatus = NULL 
)

NO SCRIPT SUPPORT.

Class constructor that initializes the function set to the given MObject.

Constructor

Parameters:
[in] object The MObject to attach the function set to
[out] ReturnStatus the return status
Status Codes:

Member Function Documentation

MFn::Type type ( ) const [virtual]

Function set type.

Return the class type : MFn::kDynArrayAttrsData.

Reimplemented from MFnData.

const char * className ( ) const [protected, virtual]

Class name.

Return the class name : "MFnArrayAttrsData".

Reimplemented from MFnData.

MStatus clear ( )

Clear the contents of all of the arrays.

Returns:
  • kSuccess operation successful
  • kFailure MS::kFailure if the instance is not attached to an MObject
unsigned int count ( ) const

Returns the number of attribute arrays.

Returns:
The number or arrays
MStringArray list ( MStatus ReturnStatus = NULL ) const

Returns a list of names for the attribute arrays.

Parameters:
[out] ReturnStatus Status code.
Returns:
A list of all the names of all the arrays stored in the data.
bool checkArrayExist ( const MString  name,
MFnArrayAttrsData::Type arrayType,
MStatus ReturnStatus = NULL 
)

Check if the attribute array related to the given name has been created.

If the named array exists return true and the array data type.

Parameters:
[in] name the name of the array to check
[out] arrayType the type of the array
[out] ReturnStatus kFailure if the instance is not attached to an MObject, and kSuccess otherwise.
Returns:
True if the array exists and false otherwise.
MVectorArray vectorArray ( const MString  name,
MStatus ReturnStatus = NULL 
)

Return an MVectorArray containing the vector array currently operated upon by the function set.

The MVectorArray returned by this method is editable, so any changes to the return instance also affects the MObject operated upon by this function set. If the array did not exist it will be created.

Parameters:
[in] name the name of the array to edit or create.
[out] ReturnStatus kFailure if the instance is not attached to an MObject, and kSuccess otherwise.
Returns:
A copy of the MVectorArray held in this instance
Examples:
ownerEmitter.cpp, simpleEmitter.cpp, and sweptEmitter.cpp.
MDoubleArray doubleArray ( const MString  name,
MStatus ReturnStatus = NULL 
)

Return an MDoubleArray containing the double array currently operated upon by the function set.

The MDoubleArray returned by this method is editable, so any changes to the return instance also affects the MObject operated upon by this function set. If the array did not exist it will be created.

Parameters:
[in] name the name of the array to edit or create.
[out] ReturnStatus kFailure if the instance is not attached to an MObject, and kSuccess otherwise.
Returns:
A copy of the MDoubleArray held in this instance
Examples:
simpleEmitter.cpp.
MIntArray intArray ( const MString  name,
MStatus ReturnStatus = NULL 
)

Return an MIntArray containing the int array currently operated upon by the function set.

The MIntArray returned by this method is editable, so any changes to the return instance also affects the MObject operated upon by this function set. If the array did not exist it will be created.

Parameters:
[in] name the name of the array to edit or create.
[out] ReturnStatus kFailure if the instance is not attached to an MObject, and kSuccess otherwise.
Returns:
A copy of the MIntArray held in this instance
MStringArray stringArray ( const MString  name,
MStatus ReturnStatus = NULL 
)

Return an MStringArray containing the string array currently operated upon by the function set.

The MStringArray returned by this method is editable, so any changes to the return instance also affects the MObject operated upon by this function set. If the array did not exist it will be created.

Parameters:
[in] name the name of the array to edit or create.
[out] ReturnStatus kFailure if the instance is not attached to an MObject, and kSuccess otherwise.
Returns:
A copy of the MStringArray held in this instance
MObject create ( MStatus ReturnStatus = NULL )

Create a new MObject, attach it to this instance, and initialize it to be empty.

Parameters:
[out] ReturnStatus kSuccess
Returns:
The newly created MObject
Examples:
ownerEmitter.cpp, simpleEmitter.cpp, and sweptEmitter.cpp.
MVectorArray getVectorData ( const MString  attrName,
MStatus ReturnStatus = NULL 
)

Return an MVectorArray containing the vector array currently operated upon by the function set.

The MVectorArray returned by this method is read only. If the array did not exist it will be created.

Parameters:
[in] attrName the name of the array to read
[out] ReturnStatus kFailure if the instance is not attached to an MObject, and kSuccess otherwise.
Returns:
A copy of the MVectorArray held in this instance
MDoubleArray getDoubleData ( const MString  attrName,
MStatus ReturnStatus = NULL 
)

Return an MDoubleArray containing the double array currently operated upon by the function set.

The MDoubleArray returned by this method is read only. If the array did not exist it will be created.

Parameters:
[in] attrName the name of the array to edit or create.
[out] ReturnStatus kFailure if the instance is not attached to an MObject, and kSuccess otherwise.
Returns:
A copy of the MDoubleArray held in this instance
MIntArray getIntData ( const MString  attrName,
MStatus ReturnStatus = NULL 
)

Return an MIntArray containing the int array currently operated upon by the function set.

The MIntArray returned by this method is read only. If the array did not exist it will be created.

Parameters:
[in] attrName the name of the array to edit or create.
[out] ReturnStatus kFailure if the instance is not attached to an MObject, and kSuccess otherwise.
Returns:
A copy of the MIntArray held in this instance
MStringArray getStringData ( const MString  attrName,
MStatus ReturnStatus = NULL 
)

Return an MStringArray containing the string array currently operated upon by the function set.

The MStringArray returned by this method is read only. If the array did not exist it will be created.

Parameters:
[in] attrName the name of the array to edit or create.
[out] ReturnStatus kFailure if the instance is not attached to an MObject, and kSuccess otherwise.
Returns:
A copy of the MStringArray held in this instance

MFnArrayAttrsData MFnArrayAttrsData MFnArrayAttrsData MFnArrayAttrsData MFnArrayAttrsData MFnArrayAttrsData MFnArrayAttrsData MFnArrayAttrsData MFnArrayAttrsData MFnArrayAttrsData
MFnArrayAttrsData MFnArrayAttrsData MFnArrayAttrsData MFnArrayAttrsData MFnArrayAttrsData MFnArrayAttrsData MFnArrayAttrsData MFnArrayAttrsData MFnArrayAttrsData MFnArrayAttrsData