MDGMessage Class Reference

+ この参照ページは、次の概要トピックと関連付けられています。

#include <MDGMessage.h>

Class Description

Dependency graph messages.

This class is used to register callbacks for dependency graph messages.

There are 4 add callback methods which will add callbacks for the following messages

\li <b>Time change</b>
\li <b>Node Added</b>
\li <b>Node Removed</b>
\li <b>Connection made or broken</b>

A filter can be specified for node added/removed messages. The default node type is "dependNode" which matches all nodes. Each method returns an id which is used to remove the callback.

To remove a callback use MMessage::removeCallback. All callbacks that are registered by a plug-in must be removed by that plug-in when it is unloaded. Failure to do so will result in a fatal error.

+ Inheritance diagram for MDGMessage:

Static Public Member Functions

static MCallbackId addTimeChangeCallback (MMessage::MTimeFunction func, void *clientData=NULL, MStatus *ReturnStatus=NULL)
 This method registers a callback that is called whenever the time changes in the dependency graph. More...
 
static MCallbackId addDelayedTimeChangeCallback (MMessage::MTimeFunction func, void *clientData=NULL, MStatus *ReturnStatus=NULL)
 This method registers a callback that is called whenever the time changes in the dependency graph, but after the time changed callback. More...
 
static MCallbackId addDelayedTimeChangeRunupCallback (MMessage::MTimeFunction func, void *clientData=NULL, MStatus *ReturnStatus=NULL)
 This method registers a callback that is called whenever the time changes in the dependency graph, but after the other time changed callbacks which can be used to invoke a dynamics solve or runup if needed. More...
 
static MCallbackId addForceUpdateCallback (MMessage::MTimeFunction func, void *clientData=NULL, MStatus *ReturnStatus=NULL)
 This method registers a callback that is called after the time changes and after all nodes have been evaluated in the dependency graph. More...
 
static MCallbackId addNodeAddedCallback (MMessage::MNodeFunction func, const MString &nodeType=kDefaultNodeType, void *clientData=NULL, MStatus *ReturnStatus=NULL)
 This method registers a callback that is called whenever a new node is added to the dependency graph. More...
 
static MCallbackId addNodeRemovedCallback (MMessage::MNodeFunction func, const MString &nodeType=kDefaultNodeType, void *clientData=NULL, MStatus *ReturnStatus=NULL)
 This method registers a callback that is called whenever a new node is removed from the dependency graph. More...
 
static MCallbackId addConnectionCallback (MMessage::MPlugFunction func, void *clientData=NULL, MStatus *ReturnStatus=NULL)
 This method registers a callback that is called whenever a connection is made or broken in the dependency graph. More...
 
static MCallbackId addPreConnectionCallback (MMessage::MPlugFunction func, void *clientData=NULL, MStatus *ReturnStatus=NULL)
 This method registers a callback that is called whenever any connection is made or broken in the dependency graph. More...
 
- Static Public Member Functions inherited from MMessage
static MStatus removeCallback (MCallbackId id)
 Remove the specified callback from maya. More...
 
static MStatus removeCallbacks (MCallbackIdArray &ids)
 Remove all of the specified callbacks from maya. More...
 
static MCallbackId currentCallbackId (MStatus *ReturnStatus=NULL)
 Return the callback ID of the currently executing callback. More...
 
static MStatus nodeCallbacks (MObject &node, MCallbackIdArray &ids)
 Returns a list of callback IDs associated registered to a given node. More...
 
static void setRegisteringCallableScript ()
 Mark this MMessage object as one that will be passed callbacks defined in script.
 
static bool registeringCallableScript ()
 Return true if this MMessage object has its callbacks defined in script.
 
static const char * className ()
 Returns the name of this class. More...
 
static MStatus removeCallbacks (MIntArray &ids)
 This method is obsolete. This method is not available in Python. More...
 
static MStatus nodeCallbacks (MObject &node, MIntArray &ids)
 This method is obsolete. More...
 

Additional Inherited Members

- Public Types inherited from MMessage
typedef void(* MBasicFunction )(void *clientData)
 Pointer to a basic callback function. More...
 
typedef void(* MElapsedTimeFunction )(float elapsedTime, float lastTime, void *clientData)
 Pointer to an elapsed time callback function. More...
 
typedef void(* MCheckFunction )(bool *retCode, void *clientData)
 Pointer to callback function which returns a true/false result. More...
 
typedef void(* MCheckFileFunction )(bool *retCode, MFileObject &file, void *clientData)
 Pointer to a callback function which takes a file object and returns a result. More...
 
typedef void(* MCheckPlugFunction )(bool *retCode, MPlug &plug, void *clientData)
 Pointer to a callback function which takes a plug and returns a result. More...
 
typedef void(* MComponentFunction )(MUintArray componentIds[], unsigned int count, void *clientData)
 Pointer to a callback function which takes an array of component ids. More...
 
typedef void(* MNodeFunction )(MObject &node, void *clientData)
 Pointer to a callback function which takes a dependency node. More...
 
typedef void(* MStringFunction )(const MString &str, void *clientData)
 Pointer to callback function which takes a string. More...
 
typedef void(* MThreeStringFunction )(const MString &str1, const MString &str2, const MString &str3, void *clientData)
 Pointer to a callback function which takes three strings. More...
 
typedef void(* MStringIntBoolIntFunction )(const MString &str, unsigned int index, bool flag, unsigned int type, void *clientData)
 Pointer to callback function which takes a string, an index, a flag and a type. More...
 
typedef void(* MStringIndexFunction )(const MString &, unsigned int index, void *clientData)
 Pointer to callback function which takes a string and index. More...
 
typedef void(* MNodeStringBoolFunction )(MObject &node, const MString &, bool, void *clientData)
 Pointer to a callback function which takes a node, a string and a boolean. More...
 
typedef void(* MStateFunction )(bool state, void *clientData)
 Pointer to a callback function which takes a boolean state. More...
 
typedef void(* MTimeFunction )(MTime &time, void *clientData)
 Pointer to callback function which takes a time. More...
 
typedef void(* MPlugFunction )(MPlug &srcPlug, MPlug &destPlug, bool made, void *clientData)
 Pointer to plug connection callback function. More...
 
typedef void(* MNodePlugFunction )(MObject &node, MPlug &plug, void *clientData)
 Pointer to a callback function which takes a dependency node and a plug. More...
 
typedef void(* MNodeStringFunction )(MObject &node, const MString &str, void *clientData)
 Pointer to a callback function which takes a dependency node and a string. More...
 
typedef void(* MParentChildFunction )(MDagPath &child, MDagPath &parent, void *clientData)
 Pointer to to a callback function which takes two DAG nodes in a parent/child relationship. More...
 
typedef void(* MModifierFunction )(MDGModifier &modifier, void *clientData)
 Pointer to a callback function which takes a DG modifier. More...
 
typedef void(* MStringArrayFunction )(const MStringArray &strs, void *clientData)
 Pointer to a callback function which takes a string array. More...
 
typedef void(* MNodeModifierFunction )(MObject &node, MDGModifier &modifier, void *clientData)
 Pointer to a callback function which takes a dependency node and a DG modifier. More...
 
typedef void(* MObjArray )(MObjectArray &objects, void *clientData)
 Pointer to a callback function which takes an array of objects. More...
 
typedef void(* MNodeObjArray )(MObject &node, MObjectArray &objects, void *clientData)
 Pointer to a callback function which takes a dependency node and an array of objects. More...
 
typedef void(* MStringNode )(const MString &str, MObject &node, void *clientData)
 Pointer to a callback function which takes a string and a dependency node. More...
 
typedef void(* MCameraLayerFunction )(MObject &cameraSetNode, unsigned int multiIndex, bool added, void *clientData)
 Pointer to a callback function which takes a dependency node, an unsigned integer, and a boolean value. More...
 
typedef void(* MCameraLayerCameraFunction )(MObject &cameraSetNode, unsigned int multiIndex, MObject &oldCamera, MObject &newCamera, void *clientData)
 Pointer to a callback function which takes a dependency node, an unsigned integer, and two camera transform nodes. More...
 
typedef void(* MConnFailFunction )(MPlug &srcPlug, MPlug &destPlug, const MString &srcPlugName, const MString &dstPlugName, void *clientData)
 Pointer to connection-failed callback function. More...
 
typedef void(* MPlugsDGModFunction )(MPlugArray &plugs, MDGModifier &modifier, void *clientData)
 Pointer to a callback function which takes an array of MPlugs and an MDGModifier. More...
 
typedef void(* MObjectFileFunction )(const MObject &object, const MFileObject &file, void *clientData)
 Pointer to a callback function which takes an object and a file object. More...
 
typedef void(* MCheckObjectFileFunction )(bool *retCode, const MObject &referenceNode, MFileObject &file, void *clientData)
 Pointer to a callback function which takes an object and a file object and returns a result. More...
 

Member Function Documentation

MCallbackId addTimeChangeCallback ( MMessage::MTimeFunction  func,
void *  clientData = NULL,
MStatus ReturnStatus = NULL 
)
static

This method registers a callback that is called whenever the time changes in the dependency graph.

Parameters
[in]functhe callback function
\li <b>time</b> the new time
\li <b>clientData</b>   User defined data passed to the callback
                        function
[in]clientDataUser defined data passed to the callback function
[out]ReturnStatusstatus code
Returns
Identifier used for removing the callback.
Status Codes:
+ Examples:
MCallbackId addDelayedTimeChangeCallback ( MMessage::MTimeFunction  func,
void *  clientData = NULL,
MStatus ReturnStatus = NULL 
)
static

This method registers a callback that is called whenever the time changes in the dependency graph, but after the time changed callback.

Parameters
[in]functhe callback function
  • time the new time
  • clientData User defined data passed to the callback function
[in]clientDataUser defined data passed to the callback function
[out]ReturnStatusstatus code
Returns
Identifier used for removing the callback.
Status Codes:
MCallbackId addDelayedTimeChangeRunupCallback ( MMessage::MTimeFunction  func,
void *  clientData = NULL,
MStatus ReturnStatus = NULL 
)
static

This method registers a callback that is called whenever the time changes in the dependency graph, but after the other time changed callbacks which can be used to invoke a dynamics solve or runup if needed.

Parameters
[in]functhe callback function
  • time the new time
  • clientData User defined data passed to the callback function
[in]clientDataUser defined data passed to the callback function
[out]ReturnStatusstatus code
Returns
Identifier used for removing the callback.
Status Codes:
MCallbackId addForceUpdateCallback ( MMessage::MTimeFunction  func,
void *  clientData = NULL,
MStatus ReturnStatus = NULL 
)
static

This method registers a callback that is called after the time changes and after all nodes have been evaluated in the dependency graph.

Parameters
[in]functhe callback function
\li <b>time</b> the new time
\li <b>clientData</b>   User defined data passed to the callback
                        function
[in]clientDataUser defined data passed to the callback function
[out]ReturnStatusstatus code
Returns
Identifier used for removing the callback.
Status Codes:
MCallbackId addNodeAddedCallback ( MMessage::MNodeFunction  func,
const MString nodeType = kDefaultNodeType,
void *  clientData = NULL,
MStatus ReturnStatus = NULL 
)
static

This method registers a callback that is called whenever a new node is added to the dependency graph.

The nodeType argument allows you to specify the type of nodes that will trigger the callback. The default node type is "dependNode" which matches all nodes.

Parameters
[in]functhe callback function
\li <b>node</b> the new node
\li <b>clientData</b>   User defined data passed to the callback
                        function
[in]nodeTypeType of node that will trigger the callback
[in]clientDataUser defined data passed to the callback function
[out]ReturnStatusstatus code
Returns
Identifier used for removing the callback.
Status Codes:
+ Examples:
MCallbackId addNodeRemovedCallback ( MMessage::MNodeFunction  func,
const MString nodeType = kDefaultNodeType,
void *  clientData = NULL,
MStatus ReturnStatus = NULL 
)
static

This method registers a callback that is called whenever a new node is removed from the dependency graph.

The nodeType argument allows you to specify the type of nodes that will trigger the callback. The default node type is "dependNode" which matches all nodes.

Parameters
[in]functhe callback function
\li <b>node</b> the node being removed
\li <b>clientData</b>   User defined data passed to the callback
                        function
[in]nodeTypeType of node that will trigger the callback
[in]clientDataUser defined data passed to the callback function
[out]ReturnStatusstatus code
Returns
Identifier used for removing the callback.
Status Codes:
+ Examples:
MCallbackId addConnectionCallback ( MMessage::MPlugFunction  func,
void *  clientData = NULL,
MStatus ReturnStatus = NULL 
)
static

This method registers a callback that is called whenever a connection is made or broken in the dependency graph.

This callback is triggered after the given connection has been made or broken, unlike the addPreConnectionCallback which is triggered before the operation.

Parameters
[in]functhe callback function
\li <b>srcPlug</b>  Source plug of the connection
\li <b>destPlug</b> Destination plug of the connection
\li <b>made</b>      true if a new connection was made, false if
                        broken.
\li <b>clientData</b> User defined data passed to the callback
                        function
[in]clientDataUser defined data passed to the callback function
[out]ReturnStatusstatus code
Returns
Identifier used for removing the callback.
Status Codes:
MCallbackId addPreConnectionCallback ( MMessage::MPlugFunction  func,
void *  clientData = NULL,
MStatus ReturnStatus = NULL 
)
static

This method registers a callback that is called whenever any connection is made or broken in the dependency graph.

This callback is triggered before the given connection has been made or broken, unlike the addConnectionCallback which is triggered after the operation.

Parameters
[in]functhe callback function
\li <b>srcPlug</b>  Source plug of the connection
\li <b>destPlug</b> Destination plug of the connection
\li <b>made</b>      true if a new connection will be made,
                        false if it will be broken.
\li <b>clientData</b> User defined data passed to the callback
                        function
[in]clientDataUser defined data passed to the callback function
[out]ReturnStatusstatus code
Returns
Identifier used for removing the callback.
Status Codes:

The documentation for this class was generated from the following files:
  • MDGMessage.h
  • MDGMessage.cpp