7 #ifndef PXR_EXEC_VDF_PARALLEL_DATA_MANAGER_VECTOR_H
8 #define PXR_EXEC_VDF_PARALLEL_DATA_MANAGER_VECTOR_H
106 return _data->GetOrCreateDataHandle(outputId);
115 ? _data->GetDataHandle(outputId)
125 return _data->GetPrivateBufferData(handle);
134 return _data->GetScratchBufferData(handle);
143 return _data->GetPublicBufferData(handle);
155 _data->PublishPrivateBufferData(handle);
167 _data->PublishScratchBufferData(handle);
179 return _data->GetTransferredBufferData(handle);
198 return _data->TransferBufferData(handle, value, mask);
209 _data->ResetTransferredBufferData(handle);
220 return _data->GetInvalidationData(handle);
225 using Base::GetInvalidationTimestamp;
235 return _data->GetInvalidationTimestamp(handle);
246 _data->SetInvalidationTimestamp(handle, timestamp);
253 return _data->IsTouched(outputId);
260 _data->Touch(outputId);
267 return _data->Untouch(outputId);
276 void ClearDataForOutput(
const VdfId outputId);
289 return !_data || _data->GetNumData() == 0;
This is a data container for executor data managers that uses data stored in vectors indexed by outpu...
void Touch(const VdfId outputId) const
bool IsValidDataHandle(const DataHandle handle) const
#define PXR_NAMESPACE_OPEN_SCOPE
GLsizei const GLfloat * value
void ResetTransferredBufferData(const DataHandle handle)
VdfExecutorBufferData * GetPublicBufferData(const DataHandle handle) const
VdfExecutorBufferData * GetPrivateBufferData(const DataHandle handle) const
A VdfMask is placed on connections to specify the data flowing through them.
VdfExecutorBufferData * GetTransferredBufferData(const DataHandle handle) const
VdfExecutorInvalidationData * GetInvalidationData(const DataHandle handle) const
This class provides functionality to manage executor data stored as VdfExecutorData from multiple thr...
bool TransferBufferData(const DataHandle handle, VdfVector *value, const VdfMask &mask)
bool IsTouched(const VdfId outputId) const
void PublishScratchBufferData(const DataHandle handle) const
Vdf_ParallelExecutorDataVector::DataHandle DataHandle
DataHandle GetDataHandle(const VdfId outputId) const
void SetInvalidationTimestamp(const DataHandle handle, VdfInvalidationTimestamp timestamp)
VdfParallelDataManagerVector()
VdfExecutorBufferData * GetScratchBufferData(const DataHandle handle) const
void PublishPrivateBufferData(const DataHandle handle) const
This object is responsible for storing the executor buffer data, comprised of the executor cache vect...
DataHandle GetOrCreateDataHandle(const VdfId outputId) const
This is a data manager for executors that uses data stored in a vector indexed by output ids...
static const size_t InvalidHandle
unsigned int VdfInvalidationTimestamp
Type of the timestamp that identifies the most recent round of invalidation.
#define PXR_NAMESPACE_CLOSE_SCOPE
Vdf_ParallelExecutorDataManagerTraits< VdfParallelDataManagerVector >::DataHandle DataHandle
bool Untouch(const VdfId outputId)
VdfParallelExecutorDataManager< VdfParallelDataManagerVector > Base
VdfInvalidationTimestamp GetInvalidationTimestamp(const DataHandle handle) const
uint64_t VdfId
The unique identifier type for Vdf objects.