Cortex  10.0.0-a4
Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Attributes | List of all members
IECoreMaya::ObjectData Class Reference

#include <ObjectData.h>

Inherits MPxData.

Public Types

enum  CopyMode { Shallow, Deep }
 

Public Member Functions

virtual MStatus readASCII (const MArgList &argList, unsigned int &endOfTheLastParsedElement)
 
virtual MStatus readBinary (istream &in, unsigned length)
 
virtual MStatus writeASCII (ostream &out)
 
virtual MStatus writeBinary (ostream &out)
 
virtual void copy (const MPxData &source)
 The behaviour of this function is defined by the current copy mode of source.
 
virtual MTypeId typeId () const
 
virtual MString name () const
 
void setCopyMode (CopyMode mode)
 
CopyMode getCopyMode () const
 Returns the current copy mode.
 
IECore::ObjectPtr getObject ()
 
IECore::ConstObjectPtr getObject () const
 
void setObject (IECore::ObjectPtr object)
 

Static Public Member Functions

static void * creator ()
 

Static Public Attributes

static const MString typeName
 
static const MTypeId id
 

Protected Attributes

CopyMode m_copyMode
 
IECore::ObjectPtr m_object
 

Detailed Description

A Maya data type to hold IECore::Objects, allowing them to participate in the Dependency Graph.

Todo:
Perhaps offer this as a template instead, to allow specific classes of objects to be held in their own data type entirely. Maya would then prevent connection between incompatible types.

Member Function Documentation

IECore::ObjectPtr IECoreMaya::ObjectData::getObject ( )

Returns the object held by this instance - note that this is not a copy so you should be careful not to cause unwanted side effects through modification.

void IECoreMaya::ObjectData::setCopyMode ( CopyMode  mode)

Controls how the copy() method behaves when this object is the source for the copy. When in Shallow mode an ObjectData copy will point to the same Object that the original pointed to. When in Deep mode, the copy will point to a copy() of the original Object. The copied ObjectData inherits the copy mode from the original. The default copy mode for all new instances of ObjectData is Deep.

void IECoreMaya::ObjectData::setObject ( IECore::ObjectPtr  object)

Sets the object held by this instance - note that a copy is not taken, so any subsequent modification of object directly affects this ObjectData.


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