24 #ifndef PXR_IMAGING_HD_PRIM_TYPE_INDEX_H
25 #define PXR_IMAGING_HD_PRIM_TYPE_INDEX_H
35 #include <unordered_map>
49 template <
class PrimType>
171 typedef std::unordered_map<SdfPath, _PrimInfo, SdfPath::Hash> _PrimMap;
173 struct _PrimTypeEntry
182 , fallbackPrim(
nullptr)
187 typedef std::unordered_map<TfToken, size_t, TfToken::HashFunctor> _TypeIndex;
189 typedef std::vector<_PrimTypeEntry> _PrimTypeList;
191 _PrimTypeList _entries;
216 static PrimType *_RenderDelegateCreateFallbackPrim(
230 #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
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)
std::vector< class SdfPath > SdfPathVector
A vector of SdfPaths.
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)