7 #ifndef PXR_IMAGING_HD_PRIM_TYPE_INDEX_H
8 #define PXR_IMAGING_HD_PRIM_TYPE_INDEX_H
18 #include <unordered_map>
32 template <
class PrimType>
154 typedef std::unordered_map<SdfPath, _PrimInfo, SdfPath::Hash> _PrimMap;
156 struct _PrimTypeEntry
165 , fallbackPrim(
nullptr)
170 typedef std::unordered_map<TfToken, size_t, TfToken::HashFunctor> _TypeIndex;
172 typedef std::vector<_PrimTypeEntry> _PrimTypeList;
174 _PrimTypeList _entries;
199 static PrimType *_RenderDelegateCreateFallbackPrim(
213 #endif // PXR_IMAGING_HD_PRIM_TYPE_INDEX_H
const HdSceneDelegatePtrVector & GetSceneDelegatesForDirtyPrims()
PrimType * GetPrim(const TfToken &typeId, const SdfPath &primId) const
void InitPrimTypes(const TfTokenVector &primTypes)
bool CreateFallbackPrims(HdRenderDelegate *renderDelegate)
GLsizei const GLchar *const * path
void RemovePrim(const TfToken &typeId, const SdfPath &primId, HdChangeTracker &tracker, HdRenderDelegate *renderDelegate)
PrimType * GetFallbackPrim(TfToken const &typeId) const
std::vector< class SdfPath > SdfPathVector
void InsertPrim(const TfToken &typeId, HdSceneDelegate *sceneDelegate, const SdfPath &primId, HdChangeTracker &tracker, HdRenderDelegate *renderDelegate)
std::vector< TfToken > TfTokenVector
Convenience types.
void SyncPrims(HdChangeTracker &tracker, HdRenderParam *renderParam, HdRenderDelegate *renderDelegate)
PXR_NAMESPACE_CLOSE_SCOPE PXR_NAMESPACE_OPEN_SCOPE
void Clear(HdChangeTracker &tracker, HdRenderDelegate *renderDelegate)
#define PXR_NAMESPACE_CLOSE_SCOPE
void RemoveSubtree(const SdfPath &root, HdSceneDelegate *sceneDelegate, HdChangeTracker &tracker, HdRenderDelegate *renderDelegate)
std::vector< HdSceneDelegate * > HdSceneDelegatePtrVector
void GetPrimSubtree(const TfToken &typeId, const SdfPath &rootPath, SdfPathVector *outPaths)
void DestroyFallbackPrims(HdRenderDelegate *renderDelegate)