Macros


Defines

#define  DeclareSimpleCommand(_className, _vendor, _version)
#define  DeclareSingle(_fnptr)
#define  CHECK_MSTATUS_AND_RETURN(_status, _retVal)
  Return if status is not MStatus::kSuccess.
#define  CHECK_MSTATUS_AND_RETURN_IT(_status)
  Return if status is not MStatus::kSuccess.
#define  CHECK_MSTATUS(_status)
  Output an error message if status is not kSuccess.
#define  MFAIL(_status)
  True if the status is not MStatus::kSuccess.

Define Documentation

#define CHECK_MSTATUS ( _status   ) 

#define CHECK_MSTATUS_AND_RETURN ( _status,
_retVal   ) 

Return if status is not MStatus::kSuccess.

Output an error message and returns the value 'retVal' if status is not kSuccess.

Parameters:
[in]  _status  The status code.
[in]  _retVal  Return value when status if not kSuccess.
Examples:
flipUVCmd.cpp, hairCollisionSolver.cpp, renderViewInteractiveRenderCmd.cpp, renderViewRenderCmd.cpp, and renderViewRenderRegionCmd.cpp.

#define CHECK_MSTATUS_AND_RETURN_IT ( _status   ) 

Return if status is not MStatus::kSuccess.

Output an error message and returns the status if it is not kSuccess.

Parameters:
[in]  _status  The status code.
Examples:
flipUVCmd.cpp, flipUVMain.cpp, and stringFormatNode.cpp.

#define DeclareSimpleCommand ( _className,
_vendor,
_version   ) 

This macro expands to all the code necessary to create an undoable command except for the command's "doIt" method.

This macro expects as arguments the name of the class that will be derived from MPxCommand, the name of the organisation owning this code, and the version number of the plug-in.

In addition to the macro, a method with the following prototype needs to be implemented.

  MStatus className::doIt( const MArgList& )

The macro will generate a class with the given classname that is derived from MPxCommand. It will also generate the following methods:

  void* className::creator()
  MStatus initializePlugin( MObject )
  MStatus uninitializePlugin( MObject )

All methods inherited from MPxCommand such as setResult, displayWarning, and displayError are available.

Parameters:
[in]  _className  Name of the class
[in]  _vendor  Name of the organisation owning this command
[in]  _version  Plug-in version number
Examples:
cvExpandCmd.cpp, findFileTexturesCmd.cpp, findTexturesPerPolygonCmd.cpp, getAttrAffectsCmd.cpp, helixCmd.cpp, helloCmd.cpp, helloWorldCmd.cpp, instancerListCmd.cpp, listLightLinksCmd.cpp, listPolyHolesCmd.cpp, threadTestCmd.cpp, threadTestWithLocksCmd.cpp, viewCaptureCmd.cpp, volumeLightCmd.cpp, and whatisCmd.cpp.

#define DeclareSingle ( _fnptr   ) 

The macro expands to all the code necessary to create a basic non-undoable command that calls "functionPtr" from its doIt method. One limitation of using this macro is that since "functionPtr" is not a member of the class derived from MPxCommand, it cannot call methods (like setResult) that are inherited from that class.

This macro requires as argument a function with the prototype:

  MStatus functionPtr ( const MArgList& )

The macro will generate a class called _DoItCmd which is derived from MPxCommand. It also generate the following methods:

  void* _DoItCmd::creator()
  MStatus _DoItCmd::doIt( const MArgList& args )
  MStatus initializePlugin( MObject )
  MStatus uninitializePlugin( MObject )
Parameters:
[in]  _fnptr  Command function pointer

#define MFAIL ( _status   ) 

True if the status is not MStatus::kSuccess.

Parameters:
[in]  _status  The status code.

Autodesk® Maya® 2011 © 1997-2010 Autodesk, Inc. All rights reserved. Generated with doxygen 1.5.6