24 #ifndef PXR_IMAGING_HD_MERGING_SCENE_H 25 #define PXR_IMAGING_HD_MERGING_SCENE_H 28 #include "pxr/imaging/hd/filteringSceneIndex.h" 30 PXR_NAMESPACE_OPEN_SCOPE
46 static HdMergingSceneIndexRefPtr New() {
56 const HdSceneIndexBaseRefPtr &inputScene,
57 const SdfPath &activeInputSceneRoot);
60 void RemoveInputScene(
const HdSceneIndexBaseRefPtr &sceneIndex);
64 std::vector<HdSceneIndexBaseRefPtr>
GetInputScenes()
const override;
91 void _FillAddedEntriesRecursively(
92 const HdSceneIndexBaseRefPtr &newSceneIndex,
97 friend class _Observer;
107 const AddedPrimEntries &entries)
override;
111 const RemovedPrimEntries &entries)
override;
115 const DirtiedPrimEntries &entries)
override;
124 HdSceneIndexBaseRefPtr sceneIndex;
127 _InputEntry(
const HdSceneIndexBaseRefPtr &sceneIndex,
129 : sceneIndex(sceneIndex)
130 , sceneRoot(sceneRoot)
135 using _InputEntries = std::vector<_InputEntry>;
137 _InputEntries _inputs;
141 PXR_NAMESPACE_CLOSE_SCOPE
143 #endif //PXR_IMAGING_HD_MERGING_SCENE_H HD_API std::vector< HdSceneIndexBaseRefPtr > GetInputScenes() const override
satisfying HdFilteringSceneIndex
Merges multiple scenes together.
Small struct representing a 'prim' in the Hydra scene index.
Abstract interface to scene data.
A path value used to locate objects in layers or scenegraphs.
HD_API HdSceneIndexPrim GetPrim(const SdfPath &primPath) const override
Returns a pair of (prim type, datasource) for the object at primPath.
An abstract base class for scene indexes that have one or more input scene indexes which serve as a b...
HD_API void AddInputScene(const HdSceneIndexBaseRefPtr &inputScene, const SdfPath &activeInputSceneRoot)
Adds a scene with activeInputSceneRoot specifying the shallowest path at which prims should be consid...
#define TF_DECLARE_REF_PTRS(type)
Define standard ref pointer types.
HD_API SdfPathVector GetChildPrimPaths(const SdfPath &primPath) const override
Returns the paths of all scene index prims located immediately below primPath.