24#ifndef USDRI_GENERATED_STATEMENTSAPI_H
25#define USDRI_GENERATED_STATEMENTSAPI_H
30#include "pxr/usd/usdRi/api.h"
38#include "pxr/base/vt/value.h"
45#include "pxr/base/tf/type.h"
47PXR_NAMESPACE_OPEN_SCOPE
169 static const TfType &_GetStaticTfType();
171 static bool _IsTypedSchema();
175 const TfType &_GetTfType()
const override;
209 const std::string &riType,
210 const std::string &nameSpace =
"user");
219 const std::string &nameSpace =
"user");
229 const std::string &nameSpace =
"user");
241 std::vector<UsdProperty>
381PXR_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.
Scenegraph object for authoring and retrieving numeric, string, and array valued data,...
UsdPrim is the sole persistent scenegraph object on a UsdStage, and is the embodiment of a "Prim" as ...
Base class for UsdAttribute and UsdRelationship scenegraph objects.
USD_API TfToken GetBaseName() const
Return this property's name with all namespace prefixes removed, i.e.
Container namespace schema for all renderman statements.
USDRI_API std::string GetCoordinateSystem() const
Returns the value in the "ri:coordinateSystem" attribute if it exists.
static TfToken GetRiAttributeName(const UsdProperty &prop)
Return the base, most-specific name of the rib attribute.
static USDRI_API std::string MakeRiAttributePropertyName(const std::string &attrName)
Returns the given attrName prefixed with the full Ri attribute namespace, creating a name suitable fo...
USDRI_API UsdAttribute CreateRiAttribute(const TfToken &name, const TfType &tfType, const std::string &nameSpace="user")
Creates an attribute of the given tfType.
USDRI_API UsdSchemaKind _GetSchemaKind() const override
Returns the kind of schema this class belongs to.
static USDRI_API UsdRiStatementsAPI Get(const UsdStagePtr &stage, const SdfPath &path)
Return a UsdRiStatementsAPI holding the prim adhering to this schema at path on stage.
static const UsdSchemaKind schemaKind
Compile time constant representing what kind of schema this class is.
static USDRI_API bool IsRiAttribute(const UsdProperty &prop)
Return true if the property is in the "ri:attributes" namespace.
UsdRiStatementsAPI(const UsdSchemaBase &schemaObj)
Construct a UsdRiStatementsAPI on the prim held by schemaObj .
static USDRI_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...
USDRI_API bool GetModelCoordinateSystems(SdfPathVector *targets) const
Populates the output targets with the authored ri:modelCoordinateSystems, if any.
USDRI_API void SetScopedCoordinateSystem(const std::string &coordSysName)
Sets the "ri:scopedCoordinateSystem" attribute to the given string value, creating the attribute if n...
static USDRI_API UsdRiStatementsAPI Apply(const UsdPrim &prim)
Applies this single-apply API schema to the given prim.
virtual USDRI_API ~UsdRiStatementsAPI()
Destructor.
USDRI_API UsdAttribute CreateRiAttribute(const TfToken &name, const std::string &riType, const std::string &nameSpace="user")
Create a rib attribute on the prim to which this schema is attached.
static USDRI_API TfToken GetRiAttributeNameSpace(const UsdProperty &prop)
Return the containing namespace of the rib attribute (e.g. "user").
static USDRI_API bool CanApply(const UsdPrim &prim, std::string *whyNot=nullptr)
Returns true if this single-apply API schema can be applied to the given prim.
UsdRiStatementsAPI(const UsdPrim &prim=UsdPrim())
Construct a UsdRiStatementsAPI on UsdPrim prim .
USDRI_API std::vector< UsdProperty > GetRiAttributes(const std::string &nameSpace="") const
Return all rib attributes on this prim, or under a specific namespace (e.g. "user").
USDRI_API void SetCoordinateSystem(const std::string &coordSysName)
Sets the "ri:coordinateSystem" attribute to the given string value, creating the attribute if needed.
USDRI_API bool GetModelScopedCoordinateSystems(SdfPathVector *targets) const
Populates the output targets with the authored ri:modelScopedCoordinateSystems, if any.
USDRI_API std::string GetScopedCoordinateSystem() const
Returns the value in the "ri:scopedCoordinateSystem" attribute if it exists.
USDRI_API bool HasScopedCoordinateSystem() const
Returns true if the underlying prim has a ri:scopedCoordinateSystem opinion.
USDRI_API UsdAttribute GetRiAttribute(const TfToken &name, const std::string &nameSpace="user")
Return a UsdAttribute representing the Ri attribute with the name name, in the namespace nameSpace.
USDRI_API bool HasCoordinateSystem() const
Returns true if the underlying prim has a ri:coordinateSystem opinion.
The base class for all schema types in Usd.
Singleton registry that provides access to schema type information and the prim definitions for regis...
UsdSchemaKind
An enum representing which kind of schema a given schema class belongs to.
TfToken class for efficient string referencing and hashing, plus conversions to and from stl string c...
std::vector< TfToken > TfTokenVector
Convenience types.