7#ifndef PXR_USD_IMAGING_USD_SKEL_IMAGING_POINTS_RESOLVING_SCENE_INDEX_H
8#define PXR_USD_IMAGING_USD_SKEL_IMAGING_POINTS_RESOLVING_SCENE_INDEX_H
10#include "pxr/usdImaging/usdSkelImaging/api.h"
12#include "pxr/imaging/hd/filteringSceneIndex.h"
16PXR_NAMESPACE_OPEN_SCOPE
35 UsdSkelImagingPointsResolvingSceneIndexRefPtr
36 New(HdSceneIndexBaseRefPtr
const &inputSceneIndex);
57 HdSceneIndexBaseRefPtr
const &inputSceneIndex);
67 void _ProcessPrimsNeedingRefreshAndSendNotices(
68 const std::map<SdfPath, bool> &primsNeedingRefreshToHasAddedEntry,
74 bool _ProcessDirtyLocators(
81 std::shared_ptr<class UsdSkelImagingDataSourceResolvedPointsBasedPrim>;
86 bool _AddResolvedPrim(
88 bool * hasExtComputations =
nullptr);
89 void _AddDependenciesForResolvedPrim(
91 _DsHandle
const &resolvedPrim);
94 bool _RemoveResolvedPrim(
96 bool * hadExtComputations =
nullptr);
97 void _RemoveDependenciesForResolvedPrim(
99 _DsHandle
const &resolvedPrim);
106 void _RefreshResolvedPrimDataSource(
108 bool * hasExtComputations);
110 void _RefreshResolvedPrimDataSources(
111 const SdfPathSet &primPaths,
113 SdfPathSet * addedResolvedPrimsWithComputations,
114 SdfPathSet * removedResolvedPrimsWithComputations);
122 std::map<SdfPath, _DsHandle> _pathToResolvedPrim;
126 std::map<SdfPath, SdfPathSet> _skelPathToPrimPaths;
128 std::map<SdfPath, SdfPathSet> _blendShapePathToPrimPaths;
131 std::map<SdfPath, SdfPathSet> _instancerPathToPrimPaths;
134PXR_NAMESPACE_CLOSE_SCOPE
Represents a set of data source locators closed under descendancy.
Abstract interface to scene data.
A path value used to locate objects in layers or scenegraphs.
Token for efficient comparison, assignment, and hashing of known strings.
Adds ext computations to skin to points of a mesh, point, basisCurves prims.
USDSKELIMAGING_API SdfPathVector GetChildPrimPaths(const SdfPath &primPath) const override
Returns the paths of all scene index prims located immediately below primPath.
USDSKELIMAGING_API HdSceneIndexPrim GetPrim(const SdfPath &primPath) const override
Returns a pair of (prim type, datasource).
#define TF_DECLARE_REF_PTRS(type)
Define standard ref pointer types.
Small struct representing a 'prim' in the Hydra scene index.