24 #ifndef PXR_USD_IMAGING_USD_IMAGING_STAGE_SCENE_INDEX_H
25 #define PXR_USD_IMAGING_USD_IMAGING_STAGE_SCENE_INDEX_H
40 #define USDIMAGING_STAGE_SCENE_INDEX_TOKENS \
41 (includeUnloadedPrims) \
47 std::shared_ptr<class UsdImagingPrimAdapter>;
48 class UsdImaging_AdapterManager;
55 static UsdImagingStageSceneIndexRefPtr
New(
56 HdContainerDataSourceHandle
const &inputArgs =
nullptr) {
102 void _ApplyPendingResyncs();
103 void _ComputeDirtiedEntries(
104 const std::map<SdfPath, TfTokenVector> &pathToUsdProperties,
113 void FlagAsTimeVarying(
125 struct _PathHashCompare {
129 static size_t hash(
const SdfPath &p) {
133 using _VariabilityMap = tbb::concurrent_hash_map<
SdfPath,
135 mutable _VariabilityMap _timeVaryingLocators;
140 const bool _includeUnloadedPrims;
142 UsdStageRefPtr _stage;
143 _StageGlobals _stageGlobals;
147 void _PopulateSubtree(
UsdPrim subtreeRoot);
157 std::map<SdfPath, TfTokenVector> _usdPropertiesToUpdate;
158 std::map<SdfPath, TfTokenVector> _usdPropertiesToResync;
160 using _PrimAdapterPair = std::pair<UsdPrim, UsdImagingPrimAdapterSharedPtr>;
161 _PrimAdapterPair _FindResponsibleAncestor(
const UsdPrim &prim)
const;
163 std::unique_ptr<UsdImaging_AdapterManager>
const _adapterManager;
USDIMAGING_API void SetTime(UsdTimeCode time)
USDIMAGING_API void SetStage(UsdStageRefPtr stage)
TfRefPtr< T > TfCreateRefPtr(T *ptr)
GT_API const UT_StringHolder time
#define USDIMAGING_STAGE_SCENE_INDEX_TOKENS
GLboolean GLboolean GLboolean GLboolean a
IMATH_HOSTDEVICE constexpr bool equal(T1 a, T2 b, T3 t) IMATH_NOEXCEPT
USDIMAGING_API SdfPathVector GetChildPrimPaths(const SdfPath &primPath) const override
UsdStagePtr UsdStageWeakPtr
TF_DECLARE_PUBLIC_TOKENS(UsdImagingStageSceneIndexTokens, USDIMAGING_API, USDIMAGING_STAGE_SCENE_INDEX_TOKENS)
GLboolean GLboolean GLboolean b
std::vector< class SdfPath > SdfPathVector
A vector of SdfPaths.
PXR_NAMESPACE_CLOSE_SCOPE PXR_NAMESPACE_OPEN_SCOPE
USDIMAGING_API ~UsdImagingStageSceneIndex()
#define PXR_NAMESPACE_CLOSE_SCOPE
USDIMAGING_API HdSceneIndexPrim GetPrim(const SdfPath &primPath) const override
std::shared_ptr< UsdImagingPrimAdapter > UsdImagingPrimAdapterSharedPtr
USDIMAGING_API UsdTimeCode GetTime() const
static UsdImagingStageSceneIndexRefPtr New(HdContainerDataSourceHandle const &inputArgs=nullptr)
USDIMAGING_API void ApplyPendingUpdates()
size_t hash_value(const CH_ChannelRef &ref)
UsdImagingPropertyInvalidationType
TF_DECLARE_REF_PTRS(UsdImagingStageSceneIndex)