This document is for a version of USD that is under development. See this page for the current release.
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
SdfVariantSetSpec Class Reference

Represents a coherent set of alternate representations for part of a scene. More...

#include <variantSetSpec.h>

+ Inheritance diagram for SdfVariantSetSpec:

Public Member Functions

Name
SDF_API std::string GetName () const
 Returns the name of this variant set.
 
SDF_API TfToken GetNameToken () const
 Returns the name of this variant set.
 
Namespace hierarchy
SDF_API SdfSpecHandle GetOwner () const
 Returns the prim or variant that this variant set belongs to.
 
Variants
SDF_API SdfVariantView GetVariants () const
 Returns the variants as a map.
 
SDF_API SdfVariantSpecHandleVector GetVariantList () const
 Returns the variants as a vector.
 
SDF_API void RemoveVariant (const SdfVariantSpecHandle &variant)
 Removes variant from the list of variants.
 
- Public Member Functions inherited from SdfSpec
SDF_API SdfSpecoperator= (const SdfSpec &other)
 
SDF_API const SdfSchemaBaseGetSchema () const
 Returns the SdfSchemaBase for the layer that owns this spec.
 
SDF_API SdfSpecType GetSpecType () const
 Returns the SdfSpecType specifying the spec type this object represents.
 
SDF_API bool IsDormant () const
 Returns true if this object is invalid or expired.
 
SDF_API SdfLayerHandle GetLayer () const
 Returns the layer that this object belongs to.
 
SDF_API SdfPath GetPath () const
 Returns the scene path of this object.
 
SDF_API bool PermissionToEdit () const
 Returns whether this object's layer can be edited.
 
SDF_API std::vector< TfTokenListInfoKeys () const
 Returns the full list of info keys currently set on this object.
 
SDF_API std::vector< TfTokenGetMetaDataInfoKeys () const
 Returns the list of metadata info keys for this object.
 
SDF_API TfToken GetMetaDataDisplayGroup (TfToken const &key) const
 Returns this metadata key's displayGroup.
 
SDF_API VtValue GetInfo (const TfToken &key) const
 Gets the value for the given metadata key.
 
SDF_API void SetInfo (const TfToken &key, const VtValue &value)
 Sets the value for the given metadata key.
 
SDF_API void SetInfoDictionaryValue (const TfToken &dictionaryKey, const TfToken &entryKey, const VtValue &value)
 Sets the value for entryKey to value within the dictionary with the given metadata key dictionaryKey.
 
SDF_API bool HasInfo (const TfToken &key) const
 Returns whether there is a setting for the scene spec info with the given key.
 
SDF_API void ClearInfo (const TfToken &key)
 Clears the value for scene spec info with the given key.
 
SDF_API TfType GetTypeForInfo (const TfToken &key) const
 Returns the data type for the info with the given key.
 
SDF_API const VtValueGetFallbackForInfo (const TfToken &key) const
 Returns the fallback for the info with the given key.
 
SDF_API bool WriteToStream (std::ostream &, size_t indent=0) const
 Writes this spec to the given stream.
 
SDF_API bool IsInert (bool ignoreChildren=false) const
 Returns whether this object has no significant data.
 
SDF_API std::vector< TfTokenListFields () const
 Returns all fields with values.
 
SDF_API bool HasField (const TfToken &name) const
 Returns true if the spec has a non-empty value with field name name.
 
template<class T >
bool HasField (const TfToken &name, T *value) const
 Returns true if the object has a non-empty value with name name and type T.
 
SDF_API VtValue GetField (const TfToken &name) const
 Returns a field value by name.
 
template<typename T >
GetFieldAs (const TfToken &name, const T &defaultValue=T()) const
 Returns a field value by name.
 
SDF_API bool SetField (const TfToken &name, const VtValue &value)
 Sets a field value as a boxed VtValue.
 
template<typename T >
bool SetField (const TfToken &name, const T &value)
 Sets a field value of type T.
 
SDF_API bool ClearField (const TfToken &name)
 Clears a field.
 
SDF_API bool operator== (const SdfSpec &rhs) const
 
SDF_API bool operator< (const SdfSpec &rhs) const
 

Static Public Member Functions

Spec construction
static SDF_API SdfVariantSetSpecHandle New (const SdfPrimSpecHandle &prim, const std::string &name)
 Constructs a new instance.
 
static SDF_API SdfVariantSetSpecHandle New (const SdfVariantSpecHandle &prim, const std::string &name)
 Constructs a new instance.
 

Additional Inherited Members

- Protected Member Functions inherited from SdfSpec
bool _MoveSpec (const SdfPath &oldPath, const SdfPath &newPath) const
 
bool _DeleteSpec (const SdfPath &path)
 

Detailed Description

Represents a coherent set of alternate representations for part of a scene.

An SdfPrimSpec object may contain one or more named SdfVariantSetSpec objects that define variations on the prim.

An SdfVariantSetSpec object contains one or more named SdfVariantSpec objects. It may also define the name of one of its variants to be used by default.

When a prim references another prim, the referencing prim may specify one of the variants from each of the variant sets of the target prim. The chosen variant from each set (or the default variant from those sets that the referencing prim does not explicitly specify) is composited over the target prim, and then the referencing prim is composited over the result.

Definition at line 45 of file variantSetSpec.h.

Member Function Documentation

◆ GetName()

SDF_API std::string GetName ( ) const

Returns the name of this variant set.

◆ GetNameToken()

SDF_API TfToken GetNameToken ( ) const

Returns the name of this variant set.

◆ GetOwner()

SDF_API SdfSpecHandle GetOwner ( ) const

Returns the prim or variant that this variant set belongs to.

◆ GetVariantList()

SDF_API SdfVariantSpecHandleVector GetVariantList ( ) const

Returns the variants as a vector.

◆ GetVariants()

SDF_API SdfVariantView GetVariants ( ) const

Returns the variants as a map.

◆ New() [1/2]

static SDF_API SdfVariantSetSpecHandle New ( const SdfPrimSpecHandle &  prim,
const std::string &  name 
)
static

Constructs a new instance.

◆ New() [2/2]

static SDF_API SdfVariantSetSpecHandle New ( const SdfVariantSpecHandle &  prim,
const std::string &  name 
)
static

Constructs a new instance.

◆ RemoveVariant()

SDF_API void RemoveVariant ( const SdfVariantSpecHandle &  variant)

Removes variant from the list of variants.

If the variant set does not currently own variant, no action is taken.


The documentation for this class was generated from the following file: