24 #ifndef PXR_USD_PCP_CHANGES_H
25 #define PXR_USD_PCP_CHANGES_H
97 , _didChangeExpressionVariablesSource(false)
105 bool _didChangeExpressionVariablesSource;
168 void Retain(
const PcpLayerStackRefPtr& layerStack);
178 std::set<SdfLayerRefPtr> _layers;
179 std::set<PcpLayerStackRefPtr> _layerStacks;
213 const SdfLayerHandle&
layer,
221 const SdfLayerHandle& srcLayer,
246 const SdfLayerHandle& changedLayer,
282 void Swap(PcpChanges& other);
313 typedef std::map<SdfPath, SdfPath> _PathEditMap;
314 typedef std::map<PcpCache*, _PathEditMap> _RenameChanges;
323 _PathEditMap& _GetRenameChanges(
const PcpCache* cache);
327 void _Optimize()
const;
337 const _PathEditMap* pathChanges);
340 enum _SublayerChangeType {
348 const SdfLayerHandle& layer,
350 _SublayerChangeType changeType)
const;
356 _SublayerChangeType changeType)
const;
361 void _DidChangeSublayerAndLayerStacks(
const PcpCache* cache,
362 const PcpLayerStackPtrVector& stacks,
364 const SdfLayerHandle& sublayer,
365 _SublayerChangeType sublayerChange,
370 void _DidChangeSublayer(
const PcpCache* cache,
371 const PcpLayerStackPtrVector& layerStacks,
373 const SdfLayerHandle& sublayer,
374 _SublayerChangeType sublayerChange,
380 void _DidAddOrRemoveSublayer(
const PcpCache* cache,
381 const PcpLayerStackPtrVector& layerStacks,
382 const SdfLayerHandle& layer,
384 _SublayerChangeType sublayerChange,
386 std::vector<bool> *significant);
389 void _DidChangeLayerStack(
391 const PcpLayerStackPtr& layerStack,
392 bool requiresLayerStackChange,
393 bool requiresLayerStackOffsetsChange,
394 bool requiresSignificantChange);
400 void _DidChangeLayerStackRelocations(
402 const PcpLayerStackPtr& layerStack,
407 void _DidChangeLayerStackResolvedPath(
409 const PcpLayerStackPtr& layerStack,
410 bool requiresLayerStackChange,
416 void _DidChangeLayerStackExpressionVariables(
418 const PcpLayerStackPtr& layerStack,
424 void _DidChangeSpecStackInternal(
430 _RenameChanges _renameChanges;
436 #endif // PXR_USD_PCP_CHANGES_H
PXR_NAMESPACE_OPEN_SCOPE SDF_DECLARE_HANDLES(SdfLayer)
PCP_API void DidMaybeFixSublayer(const PcpCache *cache, const SdfLayerHandle &layer, const std::string &assetPath)
SdfRelocatesMap newIncrementalRelocatesTargetToSource
VtDictionary newExpressionVariables
New expression variables for this layer stack.
SdfPathSet didChangePrims
std::map< SdfPath, SdfPath > SdfRelocatesMap
A map of source SdfPaths to target SdfPaths for relocation.
GLsizei const GLchar *const * string
GLsizei const GLchar *const * path
TF_DECLARE_WEAK_AND_REF_PTRS(PcpLayerStack)
bool didChangeExpressionVariables
Must rebuild expression variables.
PCP_API void Apply() const
Applies the changes to the layer stacks and caches.
PCP_API const CacheChanges & GetCacheChanges() const
Returns a map of all of the cache changes.
SdfPathVector newRelocatesPrimPaths
PCP_API void DidChangeAssetResolver(const PcpCache *cache)
GLenum GLuint GLint GLint layer
PCP_API const LayerStackChanges & GetLayerStackChanges() const
PCP_API void DidChangeSignificantly(const PcpCache *cache, const SdfPath &path)
SdfPathSet pathsAffectedByRelocationChanges
Paths that are affected by the above relocation changes.
PCP_API const PcpLifeboat & GetLifeboat() const
std::map< SdfPath, int, SdfPath::FastLessThan > didChangeTargets
Must rebuild the connections/targets at each path.
PCP_API void DidChangeSpecs(const PcpCache *cache, const SdfPath &path, const SdfLayerHandle &changedLayer, const SdfPath &changedPath)
PCP_API void DidDestroyCache(const PcpCache *cache)
Remove any changes for cache.
PCP_API void DidMuteLayer(const PcpCache *cache, const std::string &layerId)
The layer identified by layerId was muted in cache.
void Swap(PcpLifeboat &other)
Swap the contents of this and other.
SdfRelocatesMap newIncrementalRelocatesSourceToTarget
bool didChangeLayers
Must rebuild the layer tree. Implies didChangeLayerOffsets.
std::map< PcpLayerStackPtr, PcpLayerStackChanges > LayerStackChanges
PCP_API void Swap(PcpChanges &other)
Swap the contents of this and other.
std::vector< class SdfPath > SdfPathVector
A vector of SdfPaths.
PCP_API void DidChangePaths(const PcpCache *cache, const SdfPath &oldPath, const SdfPath &newPath)
bool didMaybeChangeLayers
Layers used in the composition may have changed.
std::set< class SdfPath > SdfPathSet
A set of SdfPaths.
std::map< PcpCache *, PcpCacheChanges > CacheChanges
SdfPathSet didChangeSpecs
Must rebuild the prim/property stacks at each path.
bool didChangeRelocates
Must rebuild the relocation tables.
std::vector< std::pair< SdfLayerHandle, SdfChangeList > > SdfLayerChangeListVec
PXR_NAMESPACE_CLOSE_SCOPE PXR_NAMESPACE_OPEN_SCOPE
SdfPathSet didChangeSignificantly
PCP_API bool IsEmpty() const
Returns true iff there are no changes.
SdfRelocatesMap newRelocatesTargetToSource
PCP_API void DidChangeTargets(const PcpCache *cache, const SdfPath &path, PcpCacheChanges::TargetType targetType)
#define PXR_NAMESPACE_CLOSE_SCOPE
bool didChangeSignificantly
PCP_API void DidMaybeFixAsset(const PcpCache *cache, const PcpSite &site, const SdfLayerHandle &srcLayer, const std::string &assetPath)
SdfRelocatesMap newRelocatesSourceToTarget
const std::set< PcpLayerStackRefPtr > & GetLayerStacks() const
PCP_API void DidUnmuteLayer(const PcpCache *cache, const std::string &layerId)
The layer identified by layerId was unmuted in cache.
void Retain(const SdfLayerRefPtr &layer)
Ensure that layer exists until this object is destroyed.
PCP_API void DidChangeSpecStack(const PcpCache *cache, const SdfPath &path)
PCP_API void DidChange(const PcpCache *cache, const SdfLayerChangeListVec &changes)
bool didChangeLayerOffsets
Must rebuild the layer offsets.
std::vector< std::pair< SdfPath, SdfPath > > didChangePath