HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
HdStAggregationStrategy Class Referenceabstract

#include <strategyBase.h>

+ Inheritance diagram for HdStAggregationStrategy:

Public Types

typedef size_t AggregationId
 Aggregation ID. More...
 

Public Member Functions

virtual HDST_API ~HdStAggregationStrategy ()
 
virtual HdBufferArraySharedPtr CreateBufferArray (TfToken const &role, HdBufferSpecVector const &bufferSpecs, HdBufferArrayUsageHint usageHint)=0
 Factory for creating HdBufferArray. More...
 
virtual HdBufferArrayRangeSharedPtr CreateBufferArrayRange ()=0
 Factory for creating HdBufferArrayRange. More...
 
virtual AggregationId ComputeAggregationId (HdBufferSpecVector const &bufferSpecs, HdBufferArrayUsageHint usageHint) const =0
 Returns id for given bufferSpecs to be used for aggregation. More...
 
virtual HdBufferSpecVector GetBufferSpecs (HdBufferArraySharedPtr const &bufferArray) const =0
 Returns the buffer specs from a given buffer array. More...
 
virtual size_t GetResourceAllocation (HdBufferArraySharedPtr const &bufferArray, VtDictionary &result) const =0
 
virtual HDST_API void Flush ()
 (Optional) called to Flush consolidated / staging buffers. More...
 

Detailed Description

Aggregation strategy base class.

Definition at line 48 of file strategyBase.h.

Member Typedef Documentation

Aggregation ID.

Definition at line 51 of file strategyBase.h.

Constructor & Destructor Documentation

virtual HDST_API HdStAggregationStrategy::~HdStAggregationStrategy ( )
virtual

Member Function Documentation

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

Returns id for given bufferSpecs to be used for aggregation.

Implemented in HdStInterleavedSSBOMemoryManager, HdStInterleavedUBOMemoryManager, HdStVBOMemoryManager, and HdStVBOSimpleMemoryManager.

virtual HdBufferArraySharedPtr HdStAggregationStrategy::CreateBufferArray ( TfToken const role,
HdBufferSpecVector const bufferSpecs,
HdBufferArrayUsageHint  usageHint 
)
pure virtual
virtual HdBufferArrayRangeSharedPtr HdStAggregationStrategy::CreateBufferArrayRange ( )
pure virtual
virtual HDST_API void HdStAggregationStrategy::Flush ( )
inlinevirtual

(Optional) called to Flush consolidated / staging buffers.

Definition at line 83 of file strategyBase.h.

virtual HdBufferSpecVector HdStAggregationStrategy::GetBufferSpecs ( HdBufferArraySharedPtr const bufferArray) const
pure virtual

Returns the buffer specs from a given buffer array.

Implemented in HdStInterleavedMemoryManager, HdStVBOMemoryManager, and HdStVBOSimpleMemoryManager.

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

Returns the accumulated GPU resource allocation for items in the BufferArray passed as parameter

Implemented in HdStInterleavedMemoryManager, HdStVBOMemoryManager, and HdStVBOSimpleMemoryManager.


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