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

#include <bprim.h>

+ Inheritance diagram for HdBprim:

Public Member Functions

HD_API HdBprim (SdfPath const &id)
 
virtual HD_API ~HdBprim ()
 
SdfPath const & GetId () const
 
virtual void Sync (HdSceneDelegate *sceneDelegate, HdRenderParam *renderParam, HdDirtyBits *dirtyBits)=0
 
virtual HD_API void Finalize (HdRenderParam *renderParam)
 
virtual HdDirtyBits GetInitialDirtyBitsMask () const =0
 

Detailed Description

Bprim (buffer prim) is a base class of managing a blob of data that is used to communicate between the scene delegate and render.

Like other prim types (Rprim and Sprim), the Bprim communicates with the scene delegate got get buffer properties (e.g. the size of the buffer) as well as the contents of the buffer.

Changes to the properties and contents are change tracked and updates are cached in the renderer. The Render Delegate may choose to transform the data into a renderer specific form on download.

BPrims are sync'ed first and thus, Bprims should not be Dependent on the state of any other prim.

The most typical use of a Bprim would be a Texture.

Definition at line 56 of file bprim.h.

Constructor & Destructor Documentation

HD_API HdBprim::HdBprim ( SdfPath const &  id)
virtual HD_API HdBprim::~HdBprim ( )
virtual

Member Function Documentation

virtual HD_API void HdBprim::Finalize ( HdRenderParam renderParam)
virtual

Finalizes object resources. This function might not delete resources, but it should deal with resource ownership so that the sprim is deletable.

Reimplemented in HdRenderBuffer.

SdfPath const& HdBprim::GetId ( ) const
inline

Returns the identifier by which this buffer is known. This identifier is a common associative key used by the SceneDelegate, RenderIndex, and for binding to the buffer

Definition at line 67 of file bprim.h.

virtual HdDirtyBits HdBprim::GetInitialDirtyBitsMask ( ) const
pure virtual

Returns the minimal set of dirty bits to place in the change tracker for use in the first sync of this prim. Typically this would be all dirty bits.

Implemented in HdRenderSettings, HdRenderBuffer, and HdStField.

virtual void HdBprim::Sync ( HdSceneDelegate sceneDelegate,
HdRenderParam renderParam,
HdDirtyBits dirtyBits 
)
pure virtual

Synchronizes state from the delegate to this object.

Parameters
[in,out]dirtyBitsOn input specifies which state is is dirty and can be pulled from the scene delegate. On output specifies which bits are still dirty and were not cleaned by the sync.

Implemented in HdRenderSettings, HdRenderBuffer, HdStRenderBuffer, and HdStField.


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