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

#include <OP_DataMicroNode.h>

+ Inheritance diagram for OP_DataMicroNode:

Public Member Functions

 OP_DataMicroNode (OP_Node &node)
 
const char * className () const override
 
void getParmInputs (DEP_MicroNodeList &inputs) const
 
void getUsedDataInputs (DEP_MicroNodeList &inputs) const
 
bool inheritTimeDependentFromUsedDataInputs ()
 
bool inheritTimeInterestedFromUsedDataInputs ()
 
void getInputs (DEP_MicroNodeList &inputs) const override
 
void clearInputs () override
 
void getOutputs (DEP_MicroNodeList &outputs) const override
 
void getExtraInputs (DEP_MicroNodeList &inputs) const
 Like getInputs() but excludes wired OP_Node inputs. More...
 
void getExtraOutputs (DEP_MicroNodeList &outputs) const
 
void update (fpreal t) override
 
void update (DEP_ContextOptionsReadHandle options, const DEP_ContextOptionsStack *optstack)
 
bool requiresUpdate (fpreal t) const override
 
bool requiresUpdate (DEP_ContextOptionsReadHandle options, const DEP_ContextOptionsStack *optstack) const
 
DEP_ContextOptionsReadHandle getLastUsedContextOptions () const
 Returns the options and values used in the last cook of this data. More...
 
const
DEP_ContextOptionsReadHandle
getLastAllContextOptions () const
 Returns all options and values provided to the last cook of this data. More...
 
DEP_ContextOptionsStackgetLastUsedContextOptionsStack () const
 
const UT_StringArraygetLastMissingContextOptions () const
 
bool isEvaluating () const override
 
void evaluateExports () override
 
bool isExporting () const override
 
int64 getMemoryUsage (bool inclusive) const override
 Obtain approximate memory usage. More...
 
void dump (std::ostream &os, const char *prefix=0, int indent_level=0) const override
 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
 
void becameDirty (DEP_MicroNode &src, const DEP_PropagateData &data) override
 
void setModVersion (OP_VERSION v)
 
- 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)
 
SYS_FORCE_INLINE 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 ()
 
bool inheritContextOptionDepsFromExplicitInputs (const UT_StringArray &ignore_deps)
 
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 addExplicitInputs (const DEP_MicroNodeList &sources, bool check_dup=true)
 Bulk add multiple explicit inputs at once. 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...
 
void getExplicitOutputs (DEP_MicroNodeList &outputs) const
 Get list of all non-null explicit outputs. More...
 
int getNumExplicitOutputs () const
 Get the number of non-null outputs. More...
 
SYS_FORCE_INLINE bool isDirty () const
 Flag accessors. More...
 
void setDirty (bool flag, bool allow_clear=true)
 Flag accessors. More...
 
SYS_FORCE_INLINE bool isTimeDependent () const
 Flag accessors. More...
 
SYS_FORCE_INLINE void setTimeDependent (bool time_dependent)
 Flag accessors. More...
 
SYS_FORCE_INLINE bool isTimeInterested () const
 Flag accessors. More...
 
SYS_FORCE_INLINE void setTimeInterested (bool time_interested)
 Flag accessors. More...
 
SYS_FORCE_INLINE bool hasContextOptionDeps () const
 Flag accessors. More...
 
SYS_FORCE_INLINE const
DEP_ContextOptionDeps
getContextOptionDeps () const
 Flag accessors. More...
 
SYS_FORCE_INLINE void addContextOptionDeps (const DEP_ContextOptionDeps &opts)
 Flag accessors. More...
 
SYS_FORCE_INLINE void addContextOptionDep (const UT_StringHolder &opt)
 Flag accessors. More...
 
SYS_FORCE_INLINE void clearContextOptionDeps ()
 Flag accessors. More...
 
SYS_FORCE_INLINE bool isOpDataMicroNode () const
 Flag accessors. More...
 

Additional Inherited Members

- Public Types inherited from DEP_MicroNode
typedef std::function< void(DEP_MicroNode
&, DEP_MicroNode &) > 
Visitor
 
typedef std::function< bool(const
DEP_MicroNode &, const
DEP_MicroNode &) > 
TraverseVisitor
 
- Static Public Member Functions inherited from DEP_MicroNode
static SYS_FORCE_INLINE bool canClearDependencies ()
 Global control whether dependencies can be cleared. More...
 
static SYS_FORCE_INLINE 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
SYS_FORCE_INLINE 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

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

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 95 of file OP_DataMicroNode.h.

const char* OP_DataMicroNode::className ( ) const
inlineoverridevirtual

Reimplemented from DEP_MicroNode.

Reimplemented in VOP_DataMicroNode.

Definition at line 27 of file OP_DataMicroNode.h.

void OP_DataMicroNode::clearInputs ( )
overridevirtual

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

Reimplemented from DEP_MicroNode.

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

Dump contents to output stream, strictly for debugging purposes.

Reimplemented from DEP_MicroNode.

void OP_DataMicroNode::evaluateExports ( )
overridevirtual

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

Reimplemented from DEP_MicroNode.

void OP_DataMicroNode::getExtraInputs ( DEP_MicroNodeList inputs) const

Like getInputs() but excludes wired OP_Node inputs.

void OP_DataMicroNode::getExtraOutputs ( DEP_MicroNodeList outputs) const

Like getOutputs() but excludes wired OP_Node outputs. For parmlist micronodes, this will exclude the its owner OP_Node.

void OP_DataMicroNode::getInputs ( DEP_MicroNodeList inputs) const
overridevirtual

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.

const DEP_ContextOptionsReadHandle& OP_DataMicroNode::getLastAllContextOptions ( ) const
inline

Returns all options and values provided to the last cook of this data.

Definition at line 65 of file OP_DataMicroNode.h.

const UT_StringArray& OP_DataMicroNode::getLastMissingContextOptions ( ) const
inline

Definition at line 69 of file OP_DataMicroNode.h.

DEP_ContextOptionsReadHandle OP_DataMicroNode::getLastUsedContextOptions ( ) const
inline

Returns the options and values used in the last cook of this data.

Definition at line 62 of file OP_DataMicroNode.h.

DEP_ContextOptionsStack* OP_DataMicroNode::getLastUsedContextOptionsStack ( ) const
inline

Definition at line 67 of file OP_DataMicroNode.h.

int64 OP_DataMicroNode::getMemoryUsage ( bool  inclusive) const
overridevirtual

Obtain approximate memory usage.

Reimplemented from DEP_MicroNode.

void OP_DataMicroNode::getOutputs ( DEP_MicroNodeList outputs) const
overridevirtual

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::inheritTimeDependentFromUsedDataInputs ( )
bool OP_DataMicroNode::inheritTimeInterestedFromUsedDataInputs ( )
bool OP_DataMicroNode::isEqualToLastUpdateTime ( fpreal  t) const
inline

Definition at line 107 of file OP_DataMicroNode.h.

bool OP_DataMicroNode::isEvaluating ( ) const
overridevirtual

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.

bool OP_DataMicroNode::isExporting ( ) const
overridevirtual

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 97 of file OP_DataMicroNode.h.

OP_VERSION OP_DataMicroNode::lastModVersion ( ) const
inline

Definition at line 101 of file OP_DataMicroNode.h.

fpreal OP_DataMicroNode::lastUpdateTime ( ) const
inline

Definition at line 104 of file OP_DataMicroNode.h.

OP_VERSION OP_DataMicroNode::modVersion ( ) const
inline

Definition at line 99 of file OP_DataMicroNode.h.

OP_Node& OP_DataMicroNode::ownerNode ( ) const
inline

Definition at line 92 of file OP_DataMicroNode.h.

bool OP_DataMicroNode::requiresUpdate ( fpreal  t) const
overridevirtual

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

Reimplemented from DEP_MicroNode.

bool OP_DataMicroNode::requiresUpdate ( DEP_ContextOptionsReadHandle  options,
const DEP_ContextOptionsStack optstack 
) const
void OP_DataMicroNode::setModVersion ( OP_VERSION  v)
inline

Definition at line 113 of file OP_DataMicroNode.h.

void OP_DataMicroNode::update ( fpreal  t)
overridevirtual

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

Reimplemented from DEP_MicroNode.

void OP_DataMicroNode::update ( DEP_ContextOptionsReadHandle  options,
const DEP_ContextOptionsStack optstack 
)

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