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

#include <leafNodeCache.h>

Public Member Functions

EF_API EfLeafNodeCache ()
 
size_t GetVersion () const
 
EF_API const VdfOutputToMaskMapFindOutputs (const VdfMaskedOutputVector &outputs, bool updateIncrementally)
 
EF_API const std::vector
< const VdfNode * > & 
FindNodes (const VdfMaskedOutputVector &outputs, bool updateIncrementally)
 
EF_API const std::vector
< const VdfNode * > & 
FindNodes (const VdfMaskedOutputVector &outputs, const TfBits &outputsMask)
 
EF_API void Clear ()
 
EF_API void WillDeleteConnection (const VdfConnection &connection)
 
EF_API void DidConnect (const VdfConnection &connection)
 

Detailed Description

This cache is a thin wrapper around the EfDependencyCache.

It caches node and output dependencies on EfLeafNodes, given an arbitrary input request.

Definition at line 37 of file leafNodeCache.h.

Constructor & Destructor Documentation

EF_API EfLeafNodeCache::EfLeafNodeCache ( )

Constructor.

Member Function Documentation

EF_API void EfLeafNodeCache::Clear ( )

Clear the entire cache.

EF_API void EfLeafNodeCache::DidConnect ( const VdfConnection connection)

Call this to notify the cache of newly added connections.

Note
It is safe to call WillDeleteConnection() and DidConnect() concurrently.
EF_API const std::vector<const VdfNode *>& EfLeafNodeCache::FindNodes ( const VdfMaskedOutputVector outputs,
bool  updateIncrementally 
)

Find leaf nodes dependent on the given outputs

EF_API const std::vector<const VdfNode *>& EfLeafNodeCache::FindNodes ( const VdfMaskedOutputVector outputs,
const TfBits outputsMask 
)

Find all leaf nodes dependent on the given outputs, but only return the nodes dependent on the requested outputs not filtered out by the outputsMask. A previously passed in request of outputs will return a cache hit regardless of the value of outputsMask.

EF_API const VdfOutputToMaskMap& EfLeafNodeCache::FindOutputs ( const VdfMaskedOutputVector outputs,
bool  updateIncrementally 
)

Find outputs dependent on the given outputs.

size_t EfLeafNodeCache::GetVersion ( ) const
inline

Returns the current edit version of the leaf node cache. This number will be incremented whenever leaf node dependency changes due to network edits, or time dependency modifications. Note, that no assumptions can be made about the absolute value returned from this function. The only guarantee provided is that if two versions compare equal, leaf node dependencies have not changed.

Definition at line 52 of file leafNodeCache.h.

EF_API void EfLeafNodeCache::WillDeleteConnection ( const VdfConnection connection)

Call this to notify the cache of connections that have been deleted.

Note
It is safe to call WillDeleteConnection() and DidConnect() concurrently.

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