24 #ifndef PXR_USD_IMAGING_USD_IMAGING_INDEX_PROXY_H
25 #define PXR_USD_IMAGING_USD_IMAGING_INDEX_PROXY_H
129 _rprimsToRemove.push_back(cachePath);
130 _hdPrimInfoToRemove.push_back(cachePath);
131 _RemoveDependencies(cachePath);
136 _TypeAndPath primToRemove = {primType, cachePath};
137 _sprimsToRemove.push_back(primToRemove);
138 _hdPrimInfoToRemove.push_back(cachePath);
139 _RemoveDependencies(cachePath);
144 _TypeAndPath primToRemove = {primType, cachePath};
145 _bprimsToRemove.push_back(primToRemove);
146 _hdPrimInfoToRemove.push_back(cachePath);
147 _RemoveDependencies(cachePath);
152 _instancersToRemove.push_back(cachePath);
153 _hdPrimInfoToRemove.push_back(cachePath);
154 _RemoveDependencies(cachePath);
204 UsdImagingDelegate::_Worker* worker)
205 : _delegate(delegate)
211 void _UniqueifyPathsToRepopulate();
213 bool _AddHdPrimInfo(
SdfPath const& cachePath,
218 void _RemoveDependencies(
SdfPath const& cachePath);
221 return _usdPathsToRepopulate;
223 void _ProcessRemovals();
225 void _AddTask(
SdfPath const& usdPath);
227 struct _TypeAndPath {
232 typedef std::vector<_TypeAndPath> _TypeAndPathVector;
234 typedef std::vector<UsdImagingDelegate::_DependencyMap::value_type>
238 UsdImagingDelegate::_Worker* _worker;
241 _TypeAndPathVector _sprimsToRemove;
242 _TypeAndPathVector _bprimsToRemove;
245 _DependencyVector _dependenciesToRemove;
251 #endif //PXR_USD_IMAGING_USD_IMAGING_INDEX_PROXY_H
USDIMAGING_API void Refresh(SdfPath const &cachePath)
USDIMAGING_API bool IsSprimTypeSupported(TfToken const &typeId) const
USDIMAGING_API void InsertSprim(TfToken const &primType, SdfPath const &cachePath, UsdPrim const &usdPrim, UsdImagingPrimAdapterSharedPtr adapter=UsdImagingPrimAdapterSharedPtr())
void RemoveInstancer(SdfPath const &cachePath)
USDIMAGING_API void MarkInstancerDirty(SdfPath const &cachePath, HdDirtyBits dirtyBits)
friend class UsdImagingIndexProxy
void RemoveRprim(SdfPath const &cachePath)
USDIMAGING_API UsdImagingPrimAdapterSharedPtr GetMaterialAdapter(UsdPrim const &materialPrim)
USDIMAGING_API void InsertBprim(TfToken const &primType, SdfPath const &cachePath, UsdPrim const &usdPrim, UsdImagingPrimAdapterSharedPtr adapter=UsdImagingPrimAdapterSharedPtr())
USDIMAGING_API bool IsRprimTypeSupported(TfToken const &typeId) const
USDIMAGING_API void AddDependency(SdfPath const &cachePath, UsdPrim const &usdPrim)
USDIMAGING_API void MarkRprimDirty(SdfPath const &cachePath, HdDirtyBits dirtyBits)
std::vector< class SdfPath > SdfPathVector
A vector of SdfPaths.
void RemoveBprim(TfToken const &primType, SdfPath const &cachePath)
PXR_NAMESPACE_CLOSE_SCOPE PXR_NAMESPACE_OPEN_SCOPE
void RemoveSprim(TfToken const &primType, SdfPath const &cachePath)
USDIMAGING_API bool IsPopulated(SdfPath const &cachePath) const
USDIMAGING_API void RemovePrimInfoDependency(SdfPath const &cachePath)
#define PXR_NAMESPACE_CLOSE_SCOPE
std::shared_ptr< UsdImagingPrimAdapter > UsdImagingPrimAdapterSharedPtr
USDIMAGING_API void InsertRprim(TfToken const &primType, SdfPath const &cachePath, UsdPrim const &usdPrim, UsdImagingPrimAdapterSharedPtr adapter=UsdImagingPrimAdapterSharedPtr())
USDIMAGING_API void MarkSprimDirty(SdfPath const &cachePath, HdDirtyBits dirtyBits)
USDIMAGING_API void MarkBprimDirty(SdfPath const &cachePath, HdDirtyBits dirtyBits)
USDIMAGING_API void InsertInstancer(SdfPath const &cachePath, UsdPrim const &usdPrim, UsdImagingPrimAdapterSharedPtr adapter=UsdImagingPrimAdapterSharedPtr())
USDIMAGING_API void Repopulate(SdfPath const &usdPath)
USDIMAGING_API bool IsBprimTypeSupported(TfToken const &typeId) const