24 #ifndef PXR_USD_USD_SCHEMA_BASE_H 25 #define PXR_USD_USD_SCHEMA_BASE_H 28 #include "pxr/usd/usd/api.h" 30 #include "pxr/usd/usd/attribute.h" 31 #include "pxr/usd/usd/relationship.h" 32 #include "pxr/usd/usd/references.h" 34 PXR_NAMESPACE_OPEN_SCOPE
124 if (!_proxyPrimPath.
IsEmpty()) {
125 return _proxyPrimPath;
127 else if (Usd_PrimDataConstPtr p = get_pointer(_primData)) {
148 GetSchemaAttributeNames(
bool includeInherited=
true)
165 explicit operator bool()
const {
191 const TfType &_GetType()
const {
200 bool writeSparsely)
const;
213 static const TfType &_GetStaticTfType();
218 virtual const TfType &_GetTfType()
const;
221 Usd_PrimDataHandle _primData;
226 PXR_NAMESPACE_CLOSE_SCOPE
228 #endif //PXR_USD_USD_SCHEMA_BASE_H virtual USD_API bool _IsCompatible() const
Subclasses may override _IsCompatible to do specific compatibility checking with the given prim,...
bool IsAppliedAPISchema() const
Returns whether this is an applied API schema or not.
bool IsConcrete() const
Returns whether or not this class corresponds to a concrete instantiable prim type in scene descripti...
UsdPrim GetPrim() const
Return this schema object's held prim.
Represents a value type name, i.e.
Scenegraph object for authoring and retrieving numeric, string, and array valued data,...
bool IsTyped() const
Returns whether or not this class inherits from UsdTyped.
virtual USD_API ~UsdSchemaBase()
Destructor.
UsdSchemaKind
An enum representing which kind of schema a given schema class belongs to.
virtual UsdSchemaKind _GetSchemaKind() const
Returns the kind of schema this class is.
UsdSchemaKind GetSchemaKind() const
Returns the kind of schema this class is.
Token for efficient comparison, assignment, and hashing of known strings.
static const UsdSchemaKind schemaKind
Compile time constant representing what kind of schema this class is.
bool IsMultipleApplyAPISchema() const
Returns whether this is an applied API schema or not.
Represents a concrete typed schema.
SdfPath GetPath() const
Shorthand for GetPrim()->GetPath().
UsdPrim is the sole persistent scenegraph object on a UsdStage, and is the embodiment of a "Prim" as ...
std::vector< TfToken > TfTokenVector
Convenience types.
USD_API const UsdPrimDefinition * GetSchemaClassPrimDefinition() const
Return the prim definition associated with this schema instance if one exists, otherwise return null.
A path value used to locate objects in layers or scenegraphs.
SdfVariability
An enum that identifies variability types for attributes.
Multiple Apply API Schema.
Represents abstract or base schema types that are interface-only and cannot be instantiated.
Class representing the builtin definition of a prim given the schemas registered in the schema regist...
bool IsAPISchema() const
Returns whether this is an API schema or not.
virtual UsdSchemaKind _GetSchemaType() const
Represents a non-concrete typed schema.
TfType represents a dynamic runtime type.
Singleton registry that provides access to schema type information and the prim definitions for regis...
USD_API UsdSchemaBase(const UsdPrim &prim=UsdPrim())
Construct and store prim as the held prim.
The base class for all schema types in Usd.
bool IsEmpty() const noexcept
Returns true if this is the empty path (SdfPath::EmptyPath()).
static SDF_API const SdfPath & EmptyPath()
The empty path value, equivalent to SdfPath().
Provides a container which may hold any type, and provides introspection and iteration over array typ...