7#ifndef USDSHADE_GENERATED_COORDSYSAPI_H
8#define USDSHADE_GENERATED_COORDSYSAPI_H
13#include "pxr/usd/usdShade/api.h"
21#include "pxr/base/vt/value.h"
28#include "pxr/base/tf/type.h"
30PXR_NAMESPACE_OPEN_SCOPE
148 static std::vector<UsdShadeCoordSysAPI>
183 std::string *whyNot=
nullptr);
219 static const TfType &_GetStaticTfType();
221 static bool _IsTypedSchema();
225 const TfType &_GetTfType()
const override;
480 static void _GetBindingsForPrim(
const UsdPrim &prim,
481 std::vector<Binding> &result,
bool checkExistingBindings=
false);
485PXR_NAMESPACE_CLOSE_SCOPE
489PXR_NAMESPACE_OPEN_SCOPE
491extern TfEnvSetting<std::string> USD_SHADE_COORD_SYS_IS_MULTI_APPLY;
493PXR_NAMESPACE_CLOSE_SCOPE
Contains an asset path and an optional resolved path.
A path value used to locate objects in layers or scenegraphs.
Token for efficient comparison, assignment, and hashing of known strings.
TfType represents a dynamic runtime type.
The base class for all API schemas.
const TfToken & _GetInstanceName() const
Returns the instance name of the API schema object belonging to a multiple-apply API schema.
UsdPrim is the sole persistent scenegraph object on a UsdStage, and is the embodiment of a "Prim" as ...
A UsdRelationship creates dependencies between scenegraph objects by allowing a prim to target other ...
The base class for all schema types in Usd.
Singleton registry that provides access to schema type information and the prim definitions for regis...
UsdShadeCoordSysAPI provides a way to designate, name, and discover coordinate systems.
USDSHADE_API UsdRelationship GetBindingRel() const
Prim binding expressing the appropriate coordinate systems.
USDSHADE_API bool ClearBinding(const TfToken &name, bool removeSpec) const
Clear the indicated coordinate system binding on this prim from the current edit target.
USDSHADE_API std::vector< Binding > GetLocalBindings() const
Get the list of coordinate system bindings local to this prim.
static USDSHADE_API UsdShadeCoordSysAPI Get(const UsdStagePtr &stage, const SdfPath &path)
Return a UsdShadeCoordSysAPI holding the prim adhering to this schema at path on stage.
USDSHADE_API bool BlockBinding() const
Block the indicated coordinate system binding on this prim by blocking targets on the underlying rela...
UsdShadeCoordSysAPI(const UsdPrim &prim=UsdPrim(), const TfToken &name=TfToken())
Construct a UsdShadeCoordSysAPI on UsdPrim prim with name name .
USDSHADE_API bool ClearBinding(bool removeSpec) const
Clear the coordinate system binding on the prim corresponding to the instanceName of this UsdShadeCoo...
USDSHADE_API bool Bind(const SdfPath &path) const
Bind the name to the given path.
TfToken GetName() const
Returns the name of this multiple-apply schema instance.
static const UsdSchemaKind schemaKind
Compile time constant representing what kind of schema this class is.
static USDSHADE_API UsdShadeCoordSysAPI Get(const UsdPrim &prim, const TfToken &name)
Return a UsdShadeCoordSysAPI with name name holding the prim prim.
USDSHADE_API bool BlockBinding(const TfToken &name) const
Block the indicated coordinate system binding on this prim by blocking targets on the underlying rela...
static USDSHADE_API std::vector< UsdShadeCoordSysAPI > GetAll(const UsdPrim &prim)
Return a vector of all named instances of UsdShadeCoordSysAPI on the given prim.
static USDSHADE_API TfToken GetCoordSysRelationshipName(const std::string &coordSysName)
Returns the fully namespaced coordinate system relationship name, given the coordinate system name.
static USDSHADE_API UsdShadeCoordSysAPI Apply(const UsdPrim &prim, const TfToken &name)
Applies this multiple-apply API schema to the given prim along with the given instance name,...
static USDSHADE_API bool IsSchemaPropertyBaseName(const TfToken &baseName)
Checks if the given name baseName is the base name of a property of CoordSysAPI.
static USDSHADE_API std::vector< Binding > FindBindingsWithInheritanceForPrim(const UsdPrim &prim)
Find the list of coordinate system bindings that apply to this prim, including inherited bindings.
static USDSHADE_API bool HasLocalBindingsForPrim(const UsdPrim &prim)
Returns true if the prim has UsdShadeCoordSysAPI applied.
USDSHADE_API bool HasLocalBindings() const
Returns true if the prim has local coordinate system relationship exists.
USDSHADE_API bool Bind(const TfToken &name, const SdfPath &path) const
Bind the name to the given path.
USDSHADE_API std::vector< Binding > FindBindingsWithInheritance() const
Find the list of coordinate system bindings that apply to this prim, including inherited bindings.
USDSHADE_API UsdSchemaKind _GetSchemaKind() const override
Returns the kind of schema this class belongs to.
static USDSHADE_API bool CanContainPropertyName(const TfToken &name)
Test whether a given name contains the "coordSys:" prefix.
USDSHADE_API TfToken GetBindingBaseName() const
Strips "coordSys:" from the relationship name and returns "<instanceName>:binding".
static USDSHADE_API const TfTokenVector & GetSchemaAttributeNames(bool includeInherited=true)
Return a vector of names of all pre-declared attributes for this schema class and all its ancestor cl...
virtual USDSHADE_API ~UsdShadeCoordSysAPI()
Destructor.
USDSHADE_API Binding FindBindingWithInheritance() const
Find the coordinate system bindings that apply to this prim, including inherited bindings.
static USDSHADE_API TfToken GetBindingBaseName(const TfToken &name)
Strips "coordSys:" from the relationship name and returns "<instanceName>:binding".
USDSHADE_API bool ApplyAndBind(const TfToken &name, const SdfPath &path) const
A convinience API for clients to use to Apply schema in accordance with new UsdShadeCoordSysAPI schem...
USDSHADE_API UsdRelationship CreateBindingRel() const
See GetBindingRel(), and also Create vs Get Property Methods for when to use Get vs Create.
static USDSHADE_API bool CanApply(const UsdPrim &prim, const TfToken &name, std::string *whyNot=nullptr)
Returns true if this multiple-apply API schema can be applied, with the given instance name,...
static USDSHADE_API bool IsCoordSysAPIPath(const SdfPath &path, TfToken *name)
Checks if the given path path is of an API schema of type CoordSysAPI.
static USDSHADE_API std::vector< Binding > GetLocalBindingsForPrim(const UsdPrim &prim)
Get the list of coordinate system bindings local to this prim, across all multi-apply instanceNames.
static USDSHADE_API TfTokenVector GetSchemaAttributeNames(bool includeInherited, const TfToken &instanceName)
Return a vector of names of all pre-declared attributes for this schema class and all its ancestor cl...
UsdShadeCoordSysAPI(const UsdSchemaBase &schemaObj, const TfToken &name)
Construct a UsdShadeCoordSysAPI on the prim held by schemaObj with name name.
USDSHADE_API Binding GetLocalBinding() const
Get the coordinate system bindings local to this prim corresponding to this instance name.
A coordinate system binding.
UsdSchemaKind
An enum representing which kind of schema a given schema class belongs to.
Environment setting variable.
TfToken class for efficient string referencing and hashing, plus conversions to and from stl string c...
std::vector< TfToken > TfTokenVector
Convenience types.