7#ifndef PXR_IMAGING_HD_EXT_COMPUTATION_CONTEXT_H
8#define PXR_IMAGING_HD_EXT_COMPUTATION_CONTEXT_H
11#include "pxr/imaging/hd/api.h"
12#include "pxr/base/vt/value.h"
14PXR_NAMESPACE_OPEN_SCOPE
90 "HdExtComputationContext::GetTypedInputValue<T> called with type T"
91 "not matching the type of the input value for '%s'.",
110 "HdExtComputationContext::GetOptionalTypedInputValue<T> called with "
111 "type T not matching the type of the input value for '%s'.",
127PXR_NAMESPACE_CLOSE_SCOPE
Interface class that defines the execution environment for the client to run a computation.
virtual const VtValue & GetInputValue(const TfToken &name) const =0
Obtains the value of an named input to the computation.
T GetTypedInputValue(const TfToken &name) const
Obtains the value of an named input to the computation.
const T * GetOptionalTypedInputValuePtr(const TfToken &name) const
Obtains the value of an named input to the computation.
void SetTypedOutputValue(const TfToken &name, const T &output)
Set the value of the specified output.
virtual void SetOutputValue(const TfToken &name, const VtValue &output)=0
Set the value of the specified output.
virtual void RaiseComputationError()=0
Called to indicate an error occurred while executing a computation so that its output are invalid.
virtual const VtValue * GetOptionalInputValuePtr(const TfToken &name) const =0
Obtains the value of an named input to the computation.
Token for efficient comparison, assignment, and hashing of known strings.
char const * GetText() const
Return the text that this token represents.
Provides a container which may hold any type, and provides introspection and iteration over array typ...
bool IsHolding() const
Return true if this value is holding an object of type T, false otherwise.
T const & UncheckedGet() const &
Returns a const reference to the held object if the held object is of type T.
#define TF_CODING_ERROR(fmt, args)
Issue an internal programming error, but continue execution.