24 #ifndef PXR_USD_KIND_REGISTRY_H 25 #define PXR_USD_KIND_REGISTRY_H 30 #include "pxr/usd/kind/api.h" 36 #include <boost/noncopyable.hpp> 37 #include <unordered_map> 40 PXR_NAMESPACE_OPEN_SCOPE
105 bool _HasKind(
const TfToken& kind)
const;
109 bool _IsA(
const TfToken& derivedKind,
const TfToken &baseKind)
const;
111 std::vector<TfToken> _GetAllKinds()
const;
116 void _Register(
const TfToken& kind,
119 void _RegisterDefaults();
125 typedef std::unordered_map<TfToken, _KindData, TfToken::HashFunctor>
134 PXR_NAMESPACE_CLOSE_SCOPE
136 #endif // PXR_USD_KIND_REGISTRY_H Manage a single instance of an object.
Manage a single instance of an object (see.
TF_DECLARE_PUBLIC_TOKENS(KindTokens, KIND_API, KIND_TOKENS)
Token for efficient comparison, assignment, and hashing of known strings.
A singleton that holds known kinds and information about them.
static KIND_API bool IsA(const TfToken &derivedKind, const TfToken &baseKind)
Test whether derivedKind is the same as baseKind or has it as a base kind (either directly or indirec...
static KIND_API TfToken GetBaseKind(const TfToken &kind)
Return the base kind of the given kind.
static KIND_API KindRegistry & GetInstance()
Return the single KindRegistry instance.
static KIND_API std::vector< TfToken > GetAllKinds()
Return an unordered vector of all kinds known to the registry.
This file defines some macros that are useful for declaring and using static TfTokens.
static KIND_API bool HasKind(const TfToken &kind)
Test whether kind is known to the registry.
Enable a concrete base class for use with TfWeakPtr.
TfToken class for efficient string referencing and hashing, plus conversions to and from stl string c...