HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
OP_DataMicroNode Class Reference

#include <OP_DataMicroNode.h>

+ Inheritance diagram for OP_DataMicroNode:

Public Member Functions

 OP_DataMicroNode (OP_Node &node)
 
virtual const char * className () const
 
void getParmInputs (DEP_MicroNodeList &inputs) const
 
void getUsedDataInputs (DEP_MicroNodeList &inputs) const
 
virtual void getInputs (DEP_MicroNodeList &inputs) const
 
virtual void clearInputs ()
 
virtual void getOutputs (DEP_MicroNodeList &inputs) const
 
virtual void update (fpreal t)
 
virtual bool requiresUpdate (fpreal t) const
 
virtual bool isEvaluating () const
 
virtual void evaluateExports ()
 
virtual bool isExporting () const
 
virtual int64 getMemoryUsage (bool inclusive) const
 Obtain approximate memory usage. More...
 
virtual void dump (std::ostream &os, const char *prefix=0, int indent_level=0) const
 Dump contents to output stream, strictly for debugging purposes. More...
 
OP_NodeownerNode () const
 
void bumpModVersion ()
 
bool isModVersionOutdated () const
 
OP_VERSION modVersion () const
 
OP_VERSION lastModVersion () const
 
fpreal lastUpdateTime () const
 
bool isEqualToLastUpdateTime (fpreal t) const
 
virtual void becameDirty (DEP_MicroNode &src, const DEP_PropagateData &data)
 
- Public Member Functions inherited from DEP_MicroNode
 DEP_MicroNode ()
 
virtual ~DEP_MicroNode ()
 
void propagateDirty (Visitor client_visit, bool only_outputs=false)
 
void traverseAncestorInputs (const TraverseVisitor &visitor) const
 Traverse all ancestor inputs of this micronode. More...
 
bool markVisitPass (int pass)
 
int lastVisitPass () const
 
void dumpAsDOT (std::ostream &os, const char *prefix=0, int indent_level=0) const
 Dump the contents is a manner more suitable for DOT. More...
 
bool inheritTimeDependentFromExplicitInputs ()
 
bool inheritTimeInterestedFromExplicitInputs ()
 
void addExplicitInput (DEP_MicroNode &inp, bool check_dup)
 Methods for manipulating explicit edges. More...
 
void addExplicitInput (DEP_MicroNode &inp)
 Add an input that this micronode depends on. More...
 
void getExplicitInputs (DEP_MicroNodeList &inputs) const
 Get list of all non-null explicit inputs. More...
 
int getNumExplicitInputs () const
 Get the number of non-null inputs. More...
 
int getNumExplicitOutputs () const
 Get the number of non-null outputs. More...
 
bool isDirty () const
 Flag accessors. More...
 
void setDirty (bool flag, bool allow_clear=true)
 Flag accessors. More...
 
bool isTimeDependent () const
 Flag accessors. More...
 
void setTimeDependent (bool time_dependent)
 Flag accessors. More...
 
bool isTimeInterested () const
 Flag accessors. More...
 
void setTimeInterested (bool time_interested)
 Flag accessors. More...
 
bool isOpDataMicroNode () const
 Flag accessors. More...
 

Additional Inherited Members

- Public Types inherited from DEP_MicroNode
typedef hboost::function2
< void, DEP_MicroNode
&, DEP_MicroNode & > 
Visitor
 
typedef hboost::function2
< bool, const DEP_MicroNode
&, const DEP_MicroNode & > 
TraverseVisitor
 
typedef bool(DEP_MicroNode::* GetFlag )() const
 
typedef void(DEP_MicroNode::* SetFlag )(bool flag)
 
- Static Public Member Functions inherited from DEP_MicroNode
static bool canClearDependencies ()
 Global control whether dependencies can be cleared. More...
 
static bool canEvaluateExports ()
 Global control whether we can evaluate exports. More...
 
static SYS_FORCE_INLINE bool isSameTime (fpreal a, fpreal b)
 
- Static Public Member Functions inherited from UT_SmallObject< UT_NonCopyable >
static voidoperator new (size_t size)
 Regular new/delete operators. More...
 
static void operator delete (void *p, size_t size)
 Regular new/delete operators. More...
 
static voidoperator new (size_t, void *p)
 
static void operator delete (void *, void *)
 
- Protected Member Functions inherited from DEP_MicroNode
void setIsOpDataMicroNode (bool b)
 

Detailed Description

Definition at line 22 of file OP_DataMicroNode.h.

Constructor & Destructor Documentation

OP_DataMicroNode::OP_DataMicroNode ( OP_Node node)

Member Function Documentation

virtual void OP_DataMicroNode::becameDirty ( DEP_MicroNode src,
const DEP_PropagateData propdata 
)
virtual

Callbacks for what to do when the micronode becomes dirty. Derived micronodes can override this. Note that it requires knowledge of who made it dirty as they may behave differently. Currently used by OP_Node::propagateDirtyMicroNode

Reimplemented from DEP_MicroNode.

void OP_DataMicroNode::bumpModVersion ( )
inline

Definition at line 68 of file OP_DataMicroNode.h.

virtual const char* OP_DataMicroNode::className ( void  ) const
inlinevirtual

Reimplemented from DEP_MicroNode.

Reimplemented in VOP_DataMicroNode.

Definition at line 27 of file OP_DataMicroNode.h.

virtual void OP_DataMicroNode::clearInputs ( )
virtual

Clear all inputs, including any state data related to them. Default implementation just calls clearExplicitInputs() and setTimeDependent(false).

Reimplemented from DEP_MicroNode.

virtual void OP_DataMicroNode::dump ( std::ostream &  os,
const char *  prefix = 0,
int  indent_level = 0 
) const
virtual

Dump contents to output stream, strictly for debugging purposes.

Reimplemented from DEP_MicroNode.

virtual void OP_DataMicroNode::evaluateExports ( )
virtual

evaluateExports() is called after isExporting() is noted to be true during a dirty propagation pass initiated by dirtySubtree().

Reimplemented from DEP_MicroNode.

virtual void OP_DataMicroNode::getInputs ( DEP_MicroNodeList inputs) const
virtual

Get list of all our non-null inputs, both implicit and explicit. The base class returns the list of explicit inputs.

Reimplemented from DEP_MicroNode.

virtual int64 OP_DataMicroNode::getMemoryUsage ( bool  inclusive) const
virtual

Obtain approximate memory usage.

Reimplemented from DEP_MicroNode.

virtual void OP_DataMicroNode::getOutputs ( DEP_MicroNodeList outputs) const
virtual

Get list of all our non-null outputs, both implicit and explicit. The base class returns the list of explicit outputs.

Reimplemented from DEP_MicroNode.

Reimplemented in VOP_DataMicroNode.

void OP_DataMicroNode::getParmInputs ( DEP_MicroNodeList inputs) const
void OP_DataMicroNode::getUsedDataInputs ( DEP_MicroNodeList inputs) const
bool OP_DataMicroNode::isEqualToLastUpdateTime ( fpreal  t) const
inline

Definition at line 80 of file OP_DataMicroNode.h.

virtual bool OP_DataMicroNode::isEvaluating ( ) const
virtual

Used to determine if a micronode is currently evaluating. If this returns true, during dirty propagation, it will prevent dependencies from being removed from it.

Reimplemented from DEP_MicroNode.

virtual bool OP_DataMicroNode::isExporting ( ) const
virtual

Used to determine if a micronode requires its exports to be evaluated during the propagation pass.

Reimplemented from DEP_MicroNode.

bool OP_DataMicroNode::isModVersionOutdated ( ) const
inline

Definition at line 70 of file OP_DataMicroNode.h.

OP_VERSION OP_DataMicroNode::lastModVersion ( ) const
inline

Definition at line 74 of file OP_DataMicroNode.h.

fpreal OP_DataMicroNode::lastUpdateTime ( ) const
inline

Definition at line 77 of file OP_DataMicroNode.h.

OP_VERSION OP_DataMicroNode::modVersion ( ) const
inline

Definition at line 72 of file OP_DataMicroNode.h.

OP_Node& OP_DataMicroNode::ownerNode ( ) const
inline

Definition at line 65 of file OP_DataMicroNode.h.

virtual bool OP_DataMicroNode::requiresUpdate ( fpreal  t) const
virtual

requiresUpdate() specifies if the micro-node was dirtied, possibly based on the time t.

Reimplemented from DEP_MicroNode.

virtual void OP_DataMicroNode::update ( fpreal  t)
virtual

update() is used by users of micro-nodes to mark this node as clean at the given time t.

Reimplemented from DEP_MicroNode.


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