24 #ifndef PXR_IMAGING_HDSI_PRIMTYPE_NOTICE_BATCHING_SCENE_INDEX_H
25 #define PXR_IMAGING_HDSI_PRIMTYPE_NOTICE_BATCHING_SCENE_INDEX_H
37 #define HDSI_PRIM_TYPE_NOTICE_BATCHING_SCENE_INDEX_TOKENS \
38 (primTypePriorityFunctor)
84 const TfToken &primType)
const = 0;
95 std::shared_ptr<PrimTypePriorityFunctor>;
102 static HdsiPrimTypeNoticeBatchingSceneIndexRefPtr
New(
103 HdSceneIndexBaseRefPtr
const &inputScene,
104 HdContainerDataSourceHandle
const &inputArgs) {
136 HdSceneIndexBaseRefPtr
const &inputScene,
137 HdContainerDataSourceHandle
const &inputArgs);
178 std::variant<_PrimDirtiedEntry, _PrimAddedEntry>;
TfRefPtr< T > TfCreateRefPtr(T *ptr)
void _PrimsAdded(const HdSceneIndexBase &sender, const HdSceneIndexObserver::AddedPrimEntries &entries) override
std::set< SdfPath > _removedPrims
GLsizei const GLchar *const * path
size_t _GetPriority(const TfToken &primType) const
HDSI_API ~HdsiPrimTypeNoticeBatchingSceneIndex() override
#define HDSI_PRIM_TYPE_NOTICE_BATCHING_SCENE_INDEX_TOKENS
virtual size_t GetNumPriorities() const =0
PrimTypePriorityFunctorHandle const _primTypePriorityFunctor
TF_DECLARE_REF_PTRS(HdsiPrimTypeNoticeBatchingSceneIndex)
void _PrimsDirtied(const HdSceneIndexBase &sender, const HdSceneIndexObserver::DirtiedPrimEntries &entries) override
static HdsiPrimTypeNoticeBatchingSceneIndexRefPtr New(HdSceneIndexBaseRefPtr const &inputScene, HdContainerDataSourceHandle const &inputArgs)
std::map< SdfPath, _PrimAddedOrDirtiedEntry > _addedOrDirtiedPrims
HdDataSourceLocatorSet dirtyLocators
std::variant< _PrimDirtiedEntry, _PrimAddedEntry > _PrimAddedOrDirtiedEntry
const size_t _numPriorities
virtual size_t GetPriorityForPrimType(const TfToken &primType) const =0
HDSI_API SdfPathVector GetChildPrimPaths(const SdfPath &primPath) const override
HDSI_API HdsiPrimTypeNoticeBatchingSceneIndex(HdSceneIndexBaseRefPtr const &inputScene, HdContainerDataSourceHandle const &inputArgs)
std::vector< class SdfPath > SdfPathVector
A vector of SdfPaths.
void _AddPathToRemovedPrims(const SdfPath &path)
PXR_NAMESPACE_CLOSE_SCOPE PXR_NAMESPACE_OPEN_SCOPE
#define PXR_NAMESPACE_CLOSE_SCOPE
TF_DECLARE_PUBLIC_TOKENS(HdsiPrimTypeNoticeBatchingSceneIndexTokens, HDSI_API, HDSI_PRIM_TYPE_NOTICE_BATCHING_SCENE_INDEX_TOKENS)
std::shared_ptr< PrimTypePriorityFunctor > PrimTypePriorityFunctorHandle
virtual HDSI_API ~PrimTypePriorityFunctor()
void _RemovePathFromAddedOrDirtiedPrims(const SdfPath &path)
HDSI_API HdSceneIndexPrim GetPrim(const SdfPath &primPath) const override
void _PrimsRemoved(const HdSceneIndexBase &sender, const HdSceneIndexObserver::RemovedPrimEntries &entries) override