7 #ifndef PXR_EXEC_VDF_INPUT_VECTOR_H
8 #define PXR_EXEC_VDF_INPUT_VECTOR_H
36 return _values.GetSize();
77 .Connector<
T>(VdfTokens->out),
86 if (!TF_VERIFY(index < _values.
GetSize())) {
98 if (!TF_VERIFY(index < _values.
GetSize())) {
110 if (
const T *
v = GetValue(index)) {
122 if (index >= _values.
GetSize()) {
141 if (
const This *other = dynamic_cast<const This *>(&rhs)) {
142 return _ValuesAreEqual(other);
154 bool _ValuesAreEqual(
const This *
const rhs)
const
157 if (size == rhs->_values.GetSize()) {
160 const VdfVector &rhsValues = rhs->_values;
162 rhsValues.GetReadAccessor<
T>();
163 for (
size_t i = 0; i <
size; ++i) {
189 ~VdfEmptyInputVector()
override;
199 template <
typename T>
ReadWriteAccessor< TYPE > GetReadWriteAccessor() const
*get result *(waiting if necessary)*A common idiom is to fire a bunch of sub tasks at the and then *wait for them to all complete We provide a helper class
virtual VDF_API size_t GetMemoryUsage() const
#define PXR_NAMESPACE_OPEN_SCOPE
GLsizei const GLfloat * value
GLboolean GLboolean GLboolean GLboolean a
virtual void Compute(const VdfContext &context) const =0
GLint GLint GLsizei GLint GLenum GLenum type
GLboolean GLboolean GLboolean b
ReadAccessor< TYPE > GetReadAccessor() const
virtual VDF_API bool _IsDerivedEqual(const VdfNode &rhs) const
GLenum GLsizei GLsizei GLint * values
#define PXR_NAMESPACE_CLOSE_SCOPE