24#ifndef PXR_USD_SDF_PROPERTY_SPEC_H
25#define PXR_USD_SDF_PROPERTY_SPEC_H
30#include "pxr/usd/sdf/api.h"
31#include "pxr/usd/sdf/declareSpec.h"
34#include "pxr/usd/sdf/proxyTypes.h"
37#include "pxr/base/vt/value.h"
45PXR_NAMESPACE_OPEN_SCOPE
82 bool CanSetName(
const std::string &newName, std::string *whyNot)
const;
92 bool SetName(
const std::string &newName,
bool validate =
true);
373 inline TfToken _GetAttributeValueTypeName()
const;
376PXR_NAMESPACE_CLOSE_SCOPE
A proxy for editing map-like values.
Base class for SdfAttributeSpec and SdfRelationshipSpec.
SDF_API std::string GetDisplayGroup() const
Returns the displayGroup string for this property spec.
SDF_API void SetDocumentation(const std::string &value)
Sets the documentation string for this property spec.
SDF_API void ClearDefaultValue()
Clear the attribute's default value.
SDF_API TfType GetValueType() const
Returns the TfType representing the value type this property holds.
SDF_API TfToken GetNameToken() const
Returns the property's name, as a token.
SDF_API void SetHidden(bool value)
Sets whether this property spec will be hidden in browsers.
SDF_API bool IsCustom() const
Returns true if this spec declares a custom property.
SDF_API void SetAssetInfo(const std::string &name, const VtValue &value)
Sets a asset info entry for this property.
SDF_API void SetSymmetryArgument(const std::string &name, const VtValue &value)
Sets a property symmetry argument.
SDF_API void SetSymmetryFunction(const TfToken &functionName)
Sets the property's symmetry function.
SDF_API TfToken GetSymmetryFunction() const
Returns the property's symmetry function.
SDF_API SdfPermission GetPermission() const
Returns the property's permission restriction.
SDF_API std::string GetDocumentation() const
Returns the documentation string for this property spec.
SDF_API void SetPrefix(const std::string &value)
Sets the prefix string for this property spec.
SDF_API VtValue GetDefaultValue() const
Returns the attribute's default value.
SDF_API SdfSpecHandle GetOwner() const
Returns the owner prim or relationship of this property.
SDF_API SdfVariability GetVariability() const
Returns the variability of the property.
SDF_API bool GetHidden() const
Returns whether this property spec will be hidden in browsers.
SDF_API SdfDictionaryProxy GetSymmetryArguments() const
Returns the property's symmetry arguments.
SDF_API SdfValueTypeName GetTypeName() const
Returns the name of the value type that this property holds.
SDF_API const std::string & GetName() const
Returns the property's name.
SDF_API bool CanSetName(const std::string &newName, std::string *whyNot) const
Returns true if setting the property spec's name to newName will succeed.
SDF_API void SetPermission(SdfPermission value)
Sets the property's permission restriction.
SDF_API SdfTimeSampleMap GetTimeSampleMap() const
Returns the entire set of time samples.
SDF_API void SetCustom(bool custom)
Sets whether this spec declares a custom property.
SDF_API void SetCustomData(const std::string &name, const VtValue &value)
Sets a property custom data entry.
SDF_API bool SetDefaultValue(const VtValue &defaultValue)
Sets the attribute's default value.
SDF_API void SetComment(const std::string &value)
Sets the comment string for this property spec.
SDF_API std::string GetComment() const
Returns the comment string for this property spec.
SDF_API bool SetName(const std::string &newName, bool validate=true)
Sets the property's name.
SDF_API void SetDisplayGroup(const std::string &value)
Sets the displayGroup string for this property spec.
SDF_API std::string GetPrefix() const
Returns the prefix string for this property spec.
SDF_API bool HasDefaultValue() const
Returns true if a default value is set for this attribute.
SDF_API void SetDisplayName(const std::string &value)
Sets the displayName string for this property spec.
static SDF_API bool IsValidName(const std::string &name)
Returns true if the given name is considered a valid name for a property.
SDF_API std::string GetSuffix() const
Returns the suffix string for this property spec.
SDF_API void SetSuffix(const std::string &value)
Sets the suffix string for this property spec.
SDF_API std::string GetDisplayName() const
Returns the displayName string for this property spec.
SDF_API SdfDictionaryProxy GetAssetInfo() const
Returns the asset info dictionary for this property.
SDF_API bool HasOnlyRequiredFields() const
Returns true if this PropertySpec has no significant data other than just what is necessary for insta...
SDF_API SdfDictionaryProxy GetCustomData() const
Returns the property's custom data.
SDF_API void SetSymmetricPeer(const std::string &peerName)
Sets the property's symmetric peer.
SDF_API std::string GetSymmetricPeer() const
Returns the property's symmetric peer.
Base class for all Sdf spec classes.
Represents a value type name, i.e.
Token for efficient comparison, assignment, and hashing of known strings.
TfType represents a dynamic runtime type.
Provides a container which may hold any type, and provides introspection and iteration over array typ...
Standard pointer typedefs.
TfToken class for efficient string referencing and hashing, plus conversions to and from stl string c...
SdfVariability
An enum that identifies variability types for attributes.
SdfPermission
An enum that defines permission levels.
std::map< double, VtValue > SdfTimeSampleMap
A map from sample times to sample values.