HDK
|
#include <bufferArrayRangeGL.h>
Public Member Functions | |
virtual HDST_API | ~HdStBufferArrayRangeGL () |
virtual HdStBufferResourceGLSharedPtr | GetResource () const =0 |
virtual HdStBufferResourceGLSharedPtr | GetResource (TfToken const &name)=0 |
Returns the named GPU resource. More... | |
virtual HdStBufferResourceGLNamedList const & | GetResources () const =0 |
Returns the list of all named GPU resources for this bufferArrayRange. More... | |
virtual HDST_API void | GetBufferSpecs (HdBufferSpecVector *bufferSpecs) const override |
Sets the bufferSpecs for all resources. More... | |
![]() | |
HD_API | HdBufferArrayRange () |
virtual HD_API | ~HdBufferArrayRange () |
virtual bool | IsValid () const =0 |
Returns true if this range is valid. More... | |
virtual bool | IsAssigned () const =0 |
Returns true is the range has been assigned to a buffer. More... | |
virtual bool | IsImmutable () const =0 |
Returns true if this range is marked as immutable. More... | |
virtual bool | Resize (int numElements)=0 |
virtual void | CopyData (HdBufferSourceSharedPtr const &bufferSource)=0 |
Copy source data into buffer. More... | |
virtual VtValue | ReadData (TfToken const &name) const =0 |
Read back the buffer content. More... | |
virtual int | GetElementOffset () const =0 |
virtual int | GetByteOffset (TfToken const &resourceName) const =0 |
virtual size_t | GetNumElements () const =0 |
Returns the number of elements. More... | |
virtual size_t | GetVersion () const =0 |
Returns the version of the buffer array. More... | |
virtual void | IncrementVersion ()=0 |
virtual size_t | GetMaxNumElements () const =0 |
Returns the max number of elements. More... | |
virtual HdBufferArrayUsageHint | GetUsageHint () const =0 |
Gets the usage hint on the underlying buffer array. More... | |
virtual void | SetBufferArray (HdBufferArray *bufferArray)=0 |
Sets the buffer array associated with this buffer;. More... | |
virtual void | DebugDump (std::ostream &out) const =0 |
Debug output. More... | |
bool | IsAggregatedWith (HdBufferArrayRangeSharedPtr const &other) const |
Returns true if the underlying buffer array is aggregated to other's. More... | |
Additional Inherited Members | |
![]() | |
virtual const void * | _GetAggregation () const =0 |
Returns the aggregation container to be used in IsAggregatedWith() More... | |
HdBufferArrayRange (const HdBufferArrayRange &)=delete | |
HdBufferArrayRange & | operator= (const HdBufferArrayRange &)=delete |
Interface class for representing range (subset) locator of HdBufferArray.
Each memory management strategy defines a specialized range class which is inherited of this interface so that client (drawItem) can be agnostic about the implementation detail of aggregation.
Definition at line 58 of file bufferArrayRangeGL.h.
|
virtual |
Destructor (do nothing). The specialized range class may want to do something for garbage collection in its destructor. However, be careful not do any substantial work here (obviously including any kind of GL calls), since the destructor gets called frequently on various contexts.
|
overridevirtual |
Sets the bufferSpecs for all resources.
Implements HdBufferArrayRange.
|
pure virtual |
Returns the GPU resource. If the buffer array contains more than one resource, this method raises a coding error.
Implemented in HdStVBOMemoryManager::_StripedBufferArrayRange, HdStVBOSimpleMemoryManager::_SimpleBufferArrayRange, and HdStInterleavedMemoryManager::_StripedInterleavedBufferRange.
|
pure virtual |
Returns the named GPU resource.
Implemented in HdStVBOMemoryManager::_StripedBufferArrayRange, HdStVBOSimpleMemoryManager::_SimpleBufferArrayRange, and HdStInterleavedMemoryManager::_StripedInterleavedBufferRange.
|
pure virtual |
Returns the list of all named GPU resources for this bufferArrayRange.
Implemented in HdStVBOMemoryManager::_StripedBufferArrayRange, HdStVBOSimpleMemoryManager::_SimpleBufferArrayRange, and HdStInterleavedMemoryManager::_StripedInterleavedBufferRange.