7#ifndef PXR_USD_USD_SCHEMA_BASE_H
8#define PXR_USD_USD_SCHEMA_BASE_H
11#include "pxr/usd/usd/api.h"
13#include "pxr/usd/usd/attribute.h"
14#include "pxr/usd/usd/relationship.h"
15#include "pxr/usd/usd/references.h"
17PXR_NAMESPACE_OPEN_SCOPE
107 if (!_proxyPrimPath.
IsEmpty()) {
108 return _proxyPrimPath;
110 else if (Usd_PrimDataConstPtr p = get_pointer(_primData)) {
131 GetSchemaAttributeNames(
bool includeInherited=
true)
148 explicit operator bool()
const {
174 const TfType &_GetType()
const {
183 bool writeSparsely)
const;
196 static const TfType &_GetStaticTfType();
201 virtual const TfType &_GetTfType()
const;
204 Usd_PrimDataHandle _primData;
209PXR_NAMESPACE_CLOSE_SCOPE
A path value used to locate objects in layers or scenegraphs.
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().
Represents a value type name, i.e.
Token for efficient comparison, assignment, and hashing of known strings.
TfType represents a dynamic runtime type.
Scenegraph object for authoring and retrieving numeric, string, and array valued data,...
Class representing the builtin definition of a prim given the schemas registered in the schema regist...
UsdPrim is the sole persistent scenegraph object on a UsdStage, and is the embodiment of a "Prim" as ...
The base class for all schema types in Usd.
USD_API UsdSchemaBase(const UsdPrim &prim=UsdPrim())
Construct and store prim as the held prim.
static const UsdSchemaKind schemaKind
Compile time constant representing what kind of schema this class is.
virtual USD_API ~UsdSchemaBase()
Destructor.
USD_API const UsdPrimDefinition * GetSchemaClassPrimDefinition() const
Return the prim definition associated with this schema instance if one exists, otherwise return null.
UsdPrim GetPrim() const
Return this schema object's held prim.
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.
virtual UsdSchemaKind _GetSchemaType() const
USD_API UsdSchemaBase(const UsdSchemaBase &otherSchema)
Construct and store for the same prim held by otherSchema.
SdfPath GetPath() const
Shorthand for GetPrim()->GetPath().
bool IsAPISchema() const
Returns whether this is an API schema or not.
bool IsConcrete() const
Returns whether or not this class corresponds to a concrete instantiable prim type in scene descripti...
virtual UsdSchemaKind _GetSchemaKind() const
Returns the kind of schema this class is.
UsdSchemaKind GetSchemaKind() const
Returns the kind of schema this class is.
bool IsMultipleApplyAPISchema() const
Returns whether this is an applied API schema or not.
bool IsTyped() const
Returns whether or not this class inherits from UsdTyped.
Singleton registry that provides access to schema type information and the prim definitions for regis...
Provides a container which may hold any type, and provides introspection and iteration over array typ...
UsdSchemaKind
An enum representing which kind of schema a given schema class belongs to.
std::vector< TfToken > TfTokenVector
Convenience types.
SdfVariability
An enum that identifies variability types for attributes.