HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
HdStVBOSimpleMemoryManager Class Reference

#include <vboSimpleMemoryManager.h>

+ Inheritance diagram for HdStVBOSimpleMemoryManager:

Classes

class  _SimpleBufferArray
 
class  _SimpleBufferArrayRange
 

Public Member Functions

 HdStVBOSimpleMemoryManager (HdStResourceRegistry *resourceRegistry)
 
virtual HDST_API
HdBufferArraySharedPtr 
CreateBufferArray (TfToken const &role, HdBufferSpecVector const &bufferSpecs, HdBufferArrayUsageHint usageHint)
 
virtual HDST_API
HdBufferArrayRangeSharedPtr 
CreateBufferArrayRange ()
 Factory for creating HdBufferArrayRange. More...
 
virtual HDST_API
HdStAggregationStrategy::AggregationId 
ComputeAggregationId (HdBufferSpecVector const &bufferSpecs, HdBufferArrayUsageHint usageHint) const
 Returns id for given bufferSpecs to be used for aggregation. More...
 
virtual HdBufferSpecVector GetBufferSpecs (HdBufferArraySharedPtr const &bufferArray) const
 Returns the buffer specs from a given buffer array. More...
 
virtual size_t GetResourceAllocation (HdBufferArraySharedPtr const &bufferArray, VtDictionary &result) const
 Returns the size of the GPU memory used by the passed buffer array. More...
 
- Public Member Functions inherited from HdStAggregationStrategy
virtual HDST_API ~HdStAggregationStrategy ()
 
virtual HDST_API void Flush ()
 (Optional) called to Flush consolidated / staging buffers. More...
 

Protected Types

using _SimpleBufferArraySharedPtr = std::shared_ptr< _SimpleBufferArray >
 
using _SimpleBufferArrayRangeSharedPtr = std::shared_ptr< _SimpleBufferArrayRange >
 
using _SimpleBufferArrayRangePtr = std::weak_ptr< _SimpleBufferArrayRange >
 

Protected Attributes

HdStResourceRegistry *const _resourceRegistry
 

Additional Inherited Members

- Public Types inherited from HdStAggregationStrategy
typedef size_t AggregationId
 Aggregation ID. More...
 

Detailed Description

VBO simple memory manager.

This class doesn't perform any aggregation.

Definition at line 47 of file vboSimpleMemoryManager.h.

Member Typedef Documentation

Definition at line 212 of file vboSimpleMemoryManager.h.

Constructor & Destructor Documentation

HdStVBOSimpleMemoryManager::HdStVBOSimpleMemoryManager ( HdStResourceRegistry resourceRegistry)
inline

Definition at line 50 of file vboSimpleMemoryManager.h.

Member Function Documentation

virtual HDST_API HdStAggregationStrategy::AggregationId HdStVBOSimpleMemoryManager::ComputeAggregationId ( HdBufferSpecVector const bufferSpecs,
HdBufferArrayUsageHint  usageHint 
) const
virtual

Returns id for given bufferSpecs to be used for aggregation.

Implements HdStAggregationStrategy.

virtual HDST_API HdBufferArraySharedPtr HdStVBOSimpleMemoryManager::CreateBufferArray ( TfToken const role,
HdBufferSpecVector const bufferSpecs,
HdBufferArrayUsageHint  usageHint 
)
virtual
virtual HDST_API HdBufferArrayRangeSharedPtr HdStVBOSimpleMemoryManager::CreateBufferArrayRange ( )
virtual
virtual HdBufferSpecVector HdStVBOSimpleMemoryManager::GetBufferSpecs ( HdBufferArraySharedPtr const bufferArray) const
virtual

Returns the buffer specs from a given buffer array.

Implements HdStAggregationStrategy.

virtual size_t HdStVBOSimpleMemoryManager::GetResourceAllocation ( HdBufferArraySharedPtr const bufferArray,
VtDictionary result 
) const
virtual

Returns the size of the GPU memory used by the passed buffer array.

Implements HdStAggregationStrategy.

Member Data Documentation

HdStResourceRegistry* const HdStVBOSimpleMemoryManager::_resourceRegistry
protected

Definition at line 307 of file vboSimpleMemoryManager.h.


The documentation for this class was generated from the following file: