|
Observer of scene data. More...
#include <sceneIndexObserver.h>
Classes | |
struct | AddedPrimEntry |
A notice indicating a prim of a given type was added to the scene. More... | |
struct | DirtiedPrimEntry |
A notice indicating a prim was invalidated. More... | |
struct | RemovedPrimEntry |
A notice indicating a prim subtree was removed from the scene. More... | |
struct | RenamedPrimEntry |
A notice indicating a prim (and its descendents) was renamed or reparented. More... | |
Public Types | |
using | AddedPrimEntries = TfSmallVector< AddedPrimEntry, 16 > |
using | RemovedPrimEntries = TfSmallVector< RemovedPrimEntry, 16 > |
using | DirtiedPrimEntries = TfSmallVector< DirtiedPrimEntry, 16 > |
using | RenamedPrimEntries = TfSmallVector< RenamedPrimEntry, 16 > |
Public Member Functions | |
virtual HD_API void | PrimsAdded (const HdSceneIndexBase &sender, const AddedPrimEntries &entries)=0 |
A notification indicating prims have been added to the scene. | |
virtual HD_API void | PrimsRemoved (const HdSceneIndexBase &sender, const RemovedPrimEntries &entries)=0 |
A notification indicating prims have been removed from the scene. | |
virtual HD_API void | PrimsDirtied (const HdSceneIndexBase &sender, const DirtiedPrimEntries &entries)=0 |
A notification indicating prim datasources have been invalidated. | |
virtual HD_API void | PrimsRenamed (const HdSceneIndexBase &sender, const RenamedPrimEntries &entries)=0 |
A notification indicating prims (and their descendants) have been renamed or reparented. | |
Public Member Functions inherited from TfWeakBase | |
TfWeakBase (const TfWeakBase &) | |
const TfWeakBase & | __GetTfWeakBase__ () const |
const TfWeakBase & | operator= (const TfWeakBase &) |
void | EnableNotification2 () const |
TF_API void const * | GetUniqueIdentifier () const |
Static Public Member Functions | |
static HD_API void | ConvertPrimsRenamedToRemovedAndAdded (const HdSceneIndexBase &sender, const HdSceneIndexObserver::RenamedPrimEntries &renamedEntries, HdSceneIndexObserver::RemovedPrimEntries *outputRemovedEntries, HdSceneIndexObserver::AddedPrimEntries *outputAddedEntries) |
A utility for converting prims renamed messages into equivalent removed and added notices. | |
static HD_API void | ConvertPrimsRenamedToRemovedAndAdded (const HdSceneIndexBase &sender, const HdSceneIndexObserver::RenamedPrimEntries &renamedEntries, HdSceneIndexObserver *observer) |
A utility for converting prims renamed messages into equivalent removed and added notices at the observer level. | |
Additional Inherited Members | |
Protected Member Functions inherited from TfWeakBase | |
TfRefPtr< Tf_Remnant > | _Register () const |
template<class T > | |
TfRefPtr< Tf_Remnant > | _Register (T *tempRmnt) const |
bool | _HasRemnant () const |
Observer of scene data.
From the time an observer is registered with a scene index, the scene index will send it diffs as the scene changes.
Definition at line 31 of file sceneIndexObserver.h.
using AddedPrimEntries = TfSmallVector<AddedPrimEntry, 16> |
Definition at line 53 of file sceneIndexObserver.h.
using DirtiedPrimEntries = TfSmallVector<DirtiedPrimEntry, 16> |
Definition at line 93 of file sceneIndexObserver.h.
using RemovedPrimEntries = TfSmallVector<RemovedPrimEntry, 16> |
Definition at line 70 of file sceneIndexObserver.h.
using RenamedPrimEntries = TfSmallVector<RenamedPrimEntry, 16> |
Definition at line 113 of file sceneIndexObserver.h.
|
static |
A utility for converting prims renamed messages into equivalent removed and added notices at the observer level.
|
static |
A utility for converting prims renamed messages into equivalent removed and added notices.
|
pure virtual |
A notification indicating prims have been added to the scene.
The set of scene prims compiled from added/removed notices should match the set from a traversal based on sender.GetChildPrimNames
. Each prim has a path and type. It's possible for PrimsAdded
to be called for prims that already exist; in that case, observers should be sure to update the prim type, in case it changed, and resync the prim. This function is not expected to be threadsafe.
Implemented in HdSceneIndexAdapterSceneDelegate, HdsiPrimManagingSceneIndexObserver, and HdxSelectionSceneIndexObserver.
|
pure virtual |
A notification indicating prim datasources have been invalidated.
This message is not considered hierarchical on primPath
; if /Path
is dirtied, /Path/child
is not necessarily dirtied. However datasource locators are considered hierarchical: if primvars
is dirtied on a prim, primvars/color
is considered dirtied as well. This function is not expected to be threadsafe.
Implemented in HdSceneIndexAdapterSceneDelegate, HdsiPrimManagingSceneIndexObserver, and HdxSelectionSceneIndexObserver.
|
pure virtual |
A notification indicating prims have been removed from the scene.
Note that this message is considered hierarchical; if /Path
is removed, /Path/child
is considered removed as well. This function is not expected to be threadsafe.
Implemented in HdSceneIndexAdapterSceneDelegate, HdsiPrimManagingSceneIndexObserver, and HdxSelectionSceneIndexObserver.
|
pure virtual |
A notification indicating prims (and their descendants) have been renamed or reparented.
This function is not expected to be threadsafe.
Implemented in HdSceneIndexAdapterSceneDelegate, HdsiPrimManagingSceneIndexObserver, and HdxSelectionSceneIndexObserver.