C++ API Reference
MItDependencyNodes Class Reference

Dependency Node iterator. More...

#include <MItDependencyNodes.h>

Public Member Functions

 MItDependencyNodes (MFn::Type filter=MFn::kInvalid, MStatus *ReturnStatus=NULL)
 Class Constructor. More...
 
 MItDependencyNodes (MIteratorType &infoObject, MStatus *ReturnStatus=NULL)
 Class Constructor. More...
 
virtual ~MItDependencyNodes ()
 Class Destructor.
 
MStatus reset (MFn::Type filter=MFn::kInvalid)
 Resets the iterator and reinitializes the filter. More...
 
MStatus reset (MIteratorType &infoObject)
 Resets the iterator and reinitializes the filter list. More...
 
MObject thisNode (MStatus *ReturnStatus=NULL) const
 Retrieves the dependency node to which the iterator points. More...
 
MStatus next ()
 Moves to the next node matching the filter. More...
 
bool isDone (MStatus *ReturnStatus=NULL) const
 Indicates end of the iteration. More...
 
MObject item (MStatus *ReturnStatus=NULL) const
 This method is obsolete. More...
 

Static Public Member Functions

static const char * className ()
 Returns the name of this class. More...
 

Detailed Description

Dependency Node iterator.

Use the dependency node iterator to traverse all the nodes in Maya's Dependency Graph.

With filtering enabled, the iterator checks to see if the node is compatible with the type specified by the filter. See MFn::Type for a list of all valid types.

Since MObjects may be compatible with more than one type (nodes are organised in a hierarchy) the MObject::hasFn() method can be used to further check for compatible types.

Any compatible Function Set can be attached to the retrieved object to query or or edit it. Often you will want to use the dependency node function set (MFnDependencyNode), which is compatible with all dependency nodes, to perform queries on each node as the iterator Traverses the Dependency Graph.

Examples:
AbcBullet/AbcBullet.cpp, AbcExport/AbcExport.cpp, animExportUtil/animExportUtil.cpp, cgFx/pluginMain.cpp, colorTransformData/colorTransformData.cpp, dx11Shader/dx11Shader.cpp, exportJointClusterDataCmd/exportJointClusterDataCmd.cpp, exportSkinClusterDataCmd/exportSkinClusterDataCmd.cpp, instanceCallbackCmd/instanceCallbackCmd.cpp, maTranslator/maTranslator.cpp, simpleEvaluator/simpleEvaluator.cpp, simplePhysicsEngine/simplePhysicsEngine.cpp, and viewOverrideTrackTexture/viewOverrideTrackTexture.cpp.

Constructor & Destructor Documentation

OPENMAYA_MAJOR_NAMESPACE_OPEN MItDependencyNodes ( MFn::Type  filter = MFn::kInvalid,
MStatus ReturnStatus = NULL 
)

Class Constructor.

Initializes the iterator and establishes the filter.

Parameters
[in]filterFunction set type (MFn::Type)
  • kInvalid - Filtering disabled
  • See MFn::Type for other values
Parameters
[out]ReturnStatusStatus Code (see below)
Status Codes:
  • MS::kSuccess Success
  • MS::kFailure Failure creating iterator
MItDependencyNodes ( MIteratorType infoObject,
MStatus ReturnStatus = NULL 
)

Class Constructor.

Initializes the iterator and the filter list.

Parameters
[in]infoObjectList of function set type (MFn::Type)
Parameters
[out]ReturnStatusStatus Code (see below)
Status Codes:
  • MS::kSuccess Success
  • MS::kFailure Failure creating iterator

Member Function Documentation

MStatus reset ( MFn::Type  filter = MFn::kInvalid)

Resets the iterator and reinitializes the filter.

Parameters
[in]filterFunction set type (MFn::Type)
  • kInvalid - Filtering disabled
  • See MFn::Type for other values
Returns
Status code
Status Codes:
  • MS::kSuccess Success
  • MS::kFailure Failure resetting iterator
Examples:
cgFx/pluginMain.cpp.
MStatus reset ( MIteratorType infoObject)

Resets the iterator and reinitializes the filter list.

The filter list is specified through MIteratorType object.

Parameters
[in]infoObjectMIterator object, which has filter list information.
Returns
Status code
Status Codes:
  • MS::kSuccess Success
  • MS::kFailure Failure resetting iterator
MObject thisNode ( MStatus ReturnStatus = NULL) const

Retrieves the dependency node to which the iterator points.

Parameters
[out]ReturnStatusStatus Code (see below).
Returns
The dependency node. A null MObject indicates failure.
Status Codes:
  • MS::kSuccess Success
  • MS::kInvalidParameter null MObject - end of iteration
  • MS::kFailure Object error
Examples:
animExportUtil/animExportUtil.cpp, cgFx/pluginMain.cpp, colorTransformData/colorTransformData.cpp, and maTranslator/maTranslator.cpp.
MStatus next ( )

Moves to the next node matching the filter.

If the filter is set to kInvalid, this method advances to the next DG node without doing any filtering.

Returns
Status code
Status Codes:
  • MS::kSuccess Success
  • MS::kFailure Object error
Examples:
animExportUtil/animExportUtil.cpp, cgFx/pluginMain.cpp, colorTransformData/colorTransformData.cpp, and maTranslator/maTranslator.cpp.
bool isDone ( MStatus ReturnStatus = NULL) const

Indicates end of the iteration.

Parameters
[out]ReturnStatusStatus Code (see below)
Returns
Bool: true if the iteration is done, false otherwise
Status Codes:
  • MS::kSuccess Success
  • MS::kFailure Object error
Examples:
animExportUtil/animExportUtil.cpp, cgFx/pluginMain.cpp, colorTransformData/colorTransformData.cpp, and maTranslator/maTranslator.cpp.
MObject item ( MStatus ReturnStatus = NULL) const

This method is obsolete.

Retrieves the dependency node to which the iterator points.

[as of Maya 2019]

Deprecated:
Use the method MItDependencyNodes::thisNode instead.
Parameters
[out]ReturnStatusStatus Code (see below).
Returns
The dependency node. A null MObject indicates failure.
Status Codes:
  • MS::kSuccess Success
  • MS::kInvalidParameter null MObject - end of iteration
  • MS::kFailure Object error
const char * className ( )
static

Returns the name of this class.

Returns
The name of this class.

The documentation for this class was generated from the following files: