24#ifndef PXR_USD_IMAGING_USD_IMAGING_PI_PROTOTYPE_PROPAGATING_SCENE_INDEX_H
25#define PXR_USD_IMAGING_USD_IMAGING_PI_PROTOTYPE_PROPAGATING_SCENE_INDEX_H
27#include "pxr/usdImaging/usdImaging/api.h"
29#include "pxr/imaging/hd/filteringSceneIndex.h"
31PXR_NAMESPACE_OPEN_SCOPE
35namespace UsdImagingPiPrototypePropagatingSceneIndex_Impl
37using _ContextSharedPtr = std::shared_ptr<struct _Context>;
38using _InstancerObserverUniquePtr = std::unique_ptr<class _InstancerObserver>;
371 static UsdImagingPiPrototypePropagatingSceneIndexRefPtr New(
372 HdSceneIndexBaseRefPtr
const &inputSceneIndex);
381 std::vector<HdSceneIndexBaseRefPtr> GetInputScenes()
const override;
385 const HdSceneIndexBaseRefPtr &inputSceneIndex);
387 friend class _MergingSceneIndexObserver;
391 _MergingSceneIndexObserver(
396 const AddedPrimEntries &entries)
override;
399 const DirtiedPrimEntries &entries)
override;
402 const RemovedPrimEntries &entries)
override;
405 const RenamedPrimEntries &entries)
override;
411 UsdImagingPiPrototypePropagatingSceneIndex_Impl::
412 _ContextSharedPtr
const _context;
414 _MergingSceneIndexObserver _mergingSceneIndexObserver;
416 UsdImagingPiPrototypePropagatingSceneIndex_Impl::
417 _InstancerObserverUniquePtr
const _instancerObserver;
420PXR_NAMESPACE_CLOSE_SCOPE
An abstract base class for scene indexes that have one or more input scene indexes which serve as a b...
Abstract interface to scene data.
A path value used to locate objects in layers or scenegraphs.
A scene index translating USD point instancers into Hydra instancers.
USDIMAGING_API SdfPathVector GetChildPrimPaths(const SdfPath &primPath) const override
Returns the paths of all scene index prims located immediately below primPath.
USDIMAGING_API HdSceneIndexPrim GetPrim(const SdfPath &primPath) const override
Returns a pair of (prim type, datasource) for the object at primPath.
#define TF_DECLARE_REF_PTRS(type)
Define standard ref pointer types.
Small struct representing a 'prim' in the Hydra scene index.