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

#include <sceneIndexObserver.h>

+ Inheritance diagram for HdSceneIndexObserver:

Classes

struct  AddedPrimEntry
 
struct  DirtiedPrimEntry
 
struct  RemovedPrimEntry
 
struct  RenamedPrimEntry
 

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 ~HdSceneIndexObserver ()
 
virtual HD_API void PrimsAdded (const HdSceneIndexBase &sender, const AddedPrimEntries &entries)=0
 
virtual HD_API void PrimsRemoved (const HdSceneIndexBase &sender, const RemovedPrimEntries &entries)=0
 
virtual HD_API void PrimsDirtied (const HdSceneIndexBase &sender, const DirtiedPrimEntries &entries)=0
 
virtual HD_API void PrimsRenamed (const HdSceneIndexBase &sender, const RenamedPrimEntries &entries)=0
 
- Public Member Functions inherited from TfWeakBase
 TfWeakBase ()
 
 TfWeakBase (const TfWeakBase &)
 
const TfWeakBase__GetTfWeakBase__ () const
 
const TfWeakBaseoperator= (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)
 
static HD_API void ConvertPrimsRenamedToRemovedAndAdded (const HdSceneIndexBase &sender, const HdSceneIndexObserver::RenamedPrimEntries &renamedEntries, HdSceneIndexObserver *observer)
 

Additional Inherited Members

- Protected Member Functions inherited from TfWeakBase
 ~TfWeakBase ()
 
TfRefPtr< Tf_Remnant_Register () const
 
template<class T >
TfRefPtr< Tf_Remnant_Register (T *tempRmnt) const
 
bool _HasRemnant () const
 

Detailed Description

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 48 of file sceneIndexObserver.h.

Member Typedef Documentation

Constructor & Destructor Documentation

virtual HD_API HdSceneIndexObserver::~HdSceneIndexObserver ( )
virtual

Member Function Documentation

static HD_API void HdSceneIndexObserver::ConvertPrimsRenamedToRemovedAndAdded ( const HdSceneIndexBase sender,
const HdSceneIndexObserver::RenamedPrimEntries renamedEntries,
HdSceneIndexObserver::RemovedPrimEntries outputRemovedEntries,
HdSceneIndexObserver::AddedPrimEntries outputAddedEntries 
)
static

A utility for converting prims renamed messages into equivalent removed and added notices.

static HD_API void HdSceneIndexObserver::ConvertPrimsRenamedToRemovedAndAdded ( const HdSceneIndexBase sender,
const HdSceneIndexObserver::RenamedPrimEntries renamedEntries,
HdSceneIndexObserver observer 
)
static

A utility for converting prims renamed messages into equivalent removed and added notices at the observer level

virtual HD_API void HdSceneIndexObserver::PrimsAdded ( const HdSceneIndexBase sender,
const AddedPrimEntries entries 
)
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 HdsiPrimManagingSceneIndexObserver, HdSceneIndexAdapterSceneDelegate, and HdxSelectionSceneIndexObserver.

virtual HD_API void HdSceneIndexObserver::PrimsDirtied ( const HdSceneIndexBase sender,
const DirtiedPrimEntries entries 
)
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 HdsiPrimManagingSceneIndexObserver, HdSceneIndexAdapterSceneDelegate, and HdxSelectionSceneIndexObserver.

virtual HD_API void HdSceneIndexObserver::PrimsRemoved ( const HdSceneIndexBase sender,
const RemovedPrimEntries entries 
)
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 HdsiPrimManagingSceneIndexObserver, HdxSelectionSceneIndexObserver, and HdSceneIndexAdapterSceneDelegate.

virtual HD_API void HdSceneIndexObserver::PrimsRenamed ( const HdSceneIndexBase sender,
const RenamedPrimEntries entries 
)
pure virtual

A notification indicating prims (and their descendants) have been renamed or reparented. This function is not expected to be threadsafe.

Implemented in HdsiPrimManagingSceneIndexObserver, HdSceneIndexAdapterSceneDelegate, and HdxSelectionSceneIndexObserver.


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