7#ifndef PXR_USD_IMAGING_USDVIEWQ_HYDRA_OBSERVER_H
8#define PXR_USD_IMAGING_USDVIEWQ_HYDRA_OBSERVER_H
10#include "pxr/imaging/hd/sceneIndex.h"
11#include "pxr/usdImaging/usdviewq/api.h"
15PXR_NAMESPACE_OPEN_SCOPE
52 using IndexList = std::vector<size_t> ;
78 const IndexList &inputIndices);
125 using NoticeEntryVector = std::vector<NoticeEntry>;
143 bool _Target(
const HdSceneIndexBaseRefPtr &sceneIndex);
146 void _ComputeNestedInputSceneIndices();
154 const AddedPrimEntries &entries)
override;
159 const RemovedPrimEntries &entries)
override;
164 const DirtiedPrimEntries &entries)
override;
169 const RenamedPrimEntries &entries)
override;
172 NoticeEntryVector notices;
177 std::optional<HdSceneIndexBaseRefPtrVector> _nestedInputSceneIndices;
179 HdSceneIndexBaseRefPtr _sceneIndex;
183PXR_NAMESPACE_CLOSE_SCOPE
Abstract interface to scene data.
A path value used to locate objects in layers or scenegraphs.
Abstracts pieces necessary for implementing a Hydra Scene Browser in a manner convenient for exposing...
USDVIEWQ_API bool HasPendingNotices()
Returns true if there are pending scene change notices.
USDVIEWQ_API NoticeEntryVector GetPendingNotices()
Returns (and clears) any accumulated scene change notices.
USDVIEWQ_API std::vector< std::string > GetNestedInputDisplayNames()
Recurses through all input scene indices and lists them all by display name.
USDVIEWQ_API std::vector< std::string > GetInputDisplayNames(const IndexList &inputIndices)
Starting from the currently targeted HdSceneIndex, each value in the inputIndices is treated as an in...
USDVIEWQ_API SdfPathVector GetChildPrimPaths(const SdfPath &primPath)
Returns the paths of the immediate children of the specified primPath for the actively observer scene...
USDVIEWQ_API bool TargetToInputSceneIndex(const IndexList &inputIndices)
Starting from the currently targeted HdSceneIndex, each value in the inputIndices is treated as an in...
USDVIEWQ_API bool TargetToNestedInputSceneIndex(size_t nestedInputIndex)
Given an index into GetNestedInputDisplayNames(), sets the corresponding scene index as targeted HdSc...
USDVIEWQ_API bool TargetToNamedSceneIndex(const std::string &name)
Target this observer to a scene index with the given name previously registered via HdSceneIndexNameR...
USDVIEWQ_API std::string GetDisplayName()
Returns the display name of the actively targeted scene index.
static USDVIEWQ_API std::vector< std::string > GetRegisteredSceneIndexNames()
Returns the names of scene indices previously registered with HdSceneIndexNameRegistry.
USDVIEWQ_API void ClearPendingNotices()
Clears any accumulated scene change notices.
USDVIEWQ_API HdSceneIndexPrim GetPrim(const SdfPath &primPath)
Returns the prim type and data source for the specified primPath for the actively observer scene inde...
Small struct representing a 'prim' in the Hydra scene index.
Aggregate of HdSceneIndexObserver entry types for easier binding to python.