#include <MDGContext.h>
Dependency graph (DG) context class.
Control the way in which dependency nodes are evaluated.
DG contexts are used to define the way in which a dependency node is going to be evaluated. Examples of such contexts include "normal", "at a given time, "for a specific instance", etc.
MDGContext is mainly used in two places; within methods that trigger evaluations, to define what kind of evaluate is being requested, and within data blocks (MDataBlock), to identify how the data was created.
There is always the notion of the "current evaluation context". That's the one that will be used when no context is specifically mentioned, and is the normal state of evaluation.
Public Member Functions | |
MDGContext () | |
Constructor. More... | |
MDGContext (const MTime &when) | |
Constructor. More... | |
MDGContext (const MDGContext &in) | |
Copy constructor. More... | |
~MDGContext () | |
Destructor. | |
bool | isNormal (MStatus *ReturnStatus=NULL) const |
Determines if this context is that of "normal" evaluation. More... | |
MStatus | getTime (MTime &) const |
Return the single time for which this context is valid. More... | |
MDGContext & | operator= (const MDGContext &other) |
Assignment operator. More... | |
bool | isCurrent (MStatus *ReturnStatus=NULL) const |
Determines if this context is the one currently being used for evaluation. More... | |
const MDGContext | makeCurrent (MStatus *ReturnStatus=NULL) const |
Set the context to be the current evaluation context. More... | |
Static Public Member Functions | |
static const char * | className () |
Returns the name of this class. More... | |
static const MDGContext | current () |
Extract the current context being used for evaluation. More... | |
Friends | |
class | MPlug |
class | MDataBlock |
MDGContext | ( | ) |
Constructor.
Creates a context to define the way in which a dependency node is evaluated. In this case the new context will be for a normal evaluation.
MDGContext | ( | const MTime & | atTime | ) |
Constructor.
Creates a context to define the way in which a dependency node is evaluated. In this case the new context will be for an evaluation at a specific time.
[in] | atTime | The time in which the evaluation will take place |
MDGContext | ( | const MDGContext & | other | ) |
Copy constructor.
Duplicates the given DG context.
[in] | other | DG context to be copied. |
bool isNormal | ( | MStatus * | ReturnStatus = NULL | ) | const |
Determines if this context is that of "normal" evaluation.
[out] | ReturnStatus | Status code |
Return the single time for which this context is valid.
The context must be a timed context, i.e. not a normal one.
[out] | timeVal | Storage for the time |
MDGContext & operator= | ( | const MDGContext & | other | ) |
Assignment operator.
Copies the RHS into this context.
[in] | other | DG context to be copied. |
|
static |
Returns the name of this class.
|
static |
Extract the current context being used for evaluation.
bool isCurrent | ( | MStatus * | ReturnStatus = NULL | ) | const |
Determines if this context is the one currently being used for evaluation.
[out] | ReturnStatus | Status code |
const MDGContext makeCurrent | ( | MStatus * | ReturnStatus = NULL | ) | const |
Set the context to be the current evaluation context.
[out] | ReturnStatus | Status code |