7#ifndef PXR_EXEC_VDF_NODE_PROCESS_INVALIDATION_INTERFACE_H
8#define PXR_EXEC_VDF_NODE_PROCESS_INVALIDATION_INTERFACE_H
14#include "pxr/exec/vdf/api.h"
17PXR_NAMESPACE_OPEN_SCOPE
59 const VdfNodeToInputPtrVectorMap::value_type &entry);
68PXR_NAMESPACE_CLOSE_SCOPE
Abstract base class for classes that execute a VdfNetwork to compute a requested set of values.
A VdfNetwork is a collection of VdfNodes and their connections.
Interface class for nodes that receive notification about input invalidation via a virtual method.
virtual VDF_API ~VdfNodeProcessInvalidationInterface()
Protected destructor.
virtual void _ProcessInvalidation(const VdfInputPtrVector *inputs, const VdfExecutorInterface *executor) const =0
The invalidation callback on this node.
static VDF_API void ProcessInvalidation(const VdfExecutorInterface *executor, const VdfNodeToInputPtrVectorMap &inputs)
Process invalidation on all the nodes contained in the inputs sets.
static VDF_API void _ProcessInvalidationForEntry(const VdfExecutorInterface *executor, const VdfNodeToInputPtrVectorMap::value_type &entry)
Process invalidation for one entry in the map.
static VDF_API void ProcessInvalidation(const VdfExecutorInterface *executor, const VdfNodeProcessInvalidationInterface &node, const VdfInputPtrVector &inputs)
Process invalidation on the specified node via the given inputs.
std::vector< const VdfInput * > VdfInputPtrVector
Type for an ordered collection of inputs.
TfHashMap< const VdfNode *, VdfInputPtrVector, TfHash > VdfNodeToInputPtrVectorMap
A map from node pointer to VdfInputPtrVector.