This document is for a version of USD that is under development. See this page for the current release.
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
HdBprim Class Referenceabstract

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

#include <bprim.h>

+ Inheritance diagram for HdBprim:

Public Member Functions

HD_API HdBprim (SdfPath const &id)
 
SdfPath const & GetId () const
 Returns the identifier by which this buffer is known.
 
virtual void Sync (HdSceneDelegate *sceneDelegate, HdRenderParam *renderParam, HdDirtyBits *dirtyBits)=0
 Synchronizes state from the delegate to this object.
 
virtual HD_API void Finalize (HdRenderParam *renderParam)
 Finalizes object resources.
 
virtual HdDirtyBits GetInitialDirtyBitsMask () const =0
 Returns the minimal set of dirty bits to place in the change tracker for use in the first sync of this prim.
 

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 39 of file bprim.h.

Member Function Documentation

◆ Finalize()

virtual HD_API void 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.

◆ GetId()

SdfPath const & 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 50 of file bprim.h.

◆ GetInitialDirtyBitsMask()

virtual HdDirtyBits 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 HdRenderBuffer, HdRenderSettings, and HdStField.

◆ Sync()

virtual void 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 HdRenderBuffer, HdStField, and HdRenderSettings.


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