24 #ifndef PXR_USD_IMAGING_USD_IMAGING_COLLECTION_CACHE_H
25 #define PXR_USD_IMAGING_USD_IMAGING_COLLECTION_CACHE_H
33 #include <tbb/concurrent_unordered_map.h>
34 #include <tbb/concurrent_queue.h>
36 #include <unordered_map>
109 std::unordered_map<Query, TfToken, Query::Hash> _idForQuery;
110 std::unordered_map<TfToken, Query, TfToken::HashFunctor> _queryForId;
111 std::unordered_map<SdfPath, TfToken, SdfPath::Hash> _idForPath;
112 std::unordered_map<Query, SdfPathSet, Query::Hash> _pathsForQuery;
115 _MarkCollectionContentDirty(
127 #endif // PXR_USD_IMAGING_USD_IMAGING_COLLECTION_CACHE_H
GLsizei const GLchar *const * path
void ClearDirtyPaths()
Clears the internal dirty flags.
Represents a flattened view of a collection. For more information about collections, please see UsdCollectionAPI as a way to encode and retrieve a collection from scene description. A UsdCollectionMembershipQuery object can be used to answer queries about membership of paths in the collection efficiently.
UsdStagePtr UsdStageWeakPtr
bool UpdateCollection(UsdCollectionAPI const &collection)
SdfPathSet const & GetDirtyPaths() const
UsdImaging_CollectionCache & operator=(const UsdImaging_CollectionCache &)=delete
VtArray< TfToken > ComputeCollectionsContainingPath(SdfPath const &path) const
Return a list of identifiers of all collections that contain.
size_t RemoveCollection(UsdStageWeakPtr const &stage, SdfPath const &path)
Returns the hash of the removed collection, or 0 if no collection existed.
std::set< class SdfPath > SdfPathSet
A set of SdfPaths.
UsdImaging_CollectionCache()=default
TfToken GetIdForCollection(UsdCollectionAPI const &collection)
Return the cached entry for the given collection.
PXR_NAMESPACE_CLOSE_SCOPE PXR_NAMESPACE_OPEN_SCOPE
UsdCollectionAPI::MembershipQuery Query
Query is the MembershipQuery computed from a collection's state.
#define PXR_NAMESPACE_CLOSE_SCOPE