All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
pipeline.h File Reference

Collection of module-scoped utilities for establishing pipeline conventions for things not currently suitable or possible to canonize in USD's schema modules. More...

+ Include dependency graph for pipeline.h:

Go to the source code of this file.

Functions

 SDF_DECLARE_HANDLES (SdfLayer)
 
USDUTILS_API TfToken UsdUtilsGetAlphaAttributeNameForColor (TfToken const &colorAttrName)
 Define the shading pipeline's convention for naming a companion alpha/opacity attribute and primvarnames given the full name of a color-valued attribute. More...
 
USDUTILS_API TfToken UsdUtilsGetModelNameFromRootLayer (const SdfLayerHandle &rootLayer)
 Returns the model name associated with a given root layer. More...
 
USDUTILS_API const std::set
< UsdUtilsRegisteredVariantSet > & 
UsdUtilsGetRegisteredVariantSets ()
 Certain variant sets can be registered with the system. More...
 
USDUTILS_API UsdPrim UsdUtilsGetPrimAtPathWithForwarding (const UsdStagePtr &stage, const SdfPath &path)
 If a valid UsdPrim already exists at path on the USD stage stage, returns it. More...
 
USDUTILS_API UsdPrim UsdUtilsUninstancePrimAtPath (const UsdStagePtr &stage, const SdfPath &path)
 Given a path, uninstances all the instanced prims in the namespace chain and returns the resulting prim at the requested path. More...
 
USDUTILS_API const TfTokenUsdUtilsGetPrimaryUVSetName ()
 Returns the name of the primary UV set used on meshes and nurbs. More...
 
USDUTILS_API const TfTokenUsdUtilsGetPrefName ()
 Returns the name of the reference position used on meshes and nurbs. More...
 
USDUTILS_API TfToken UsdUtilsGetMaterialsScopeName (const bool forceDefault=false)
 Get the name of the USD prim under which materials are expected to be authored. More...
 
USDUTILS_API TfToken UsdUtilsGetPrimaryCameraName (const bool forceDefault=false)
 Get the name of the USD prim representing the primary camera. More...
 

Variables

USDUTILS_API TfEnvSetting< bool > USD_FORCE_DEFAULT_MATERIALS_SCOPE_NAME
 

Detailed Description

Collection of module-scoped utilities for establishing pipeline conventions for things not currently suitable or possible to canonize in USD's schema modules.

Definition in file pipeline.h.

Function Documentation

USDUTILS_API TfToken UsdUtilsGetAlphaAttributeNameForColor ( TfToken const &  colorAttrName)

Define the shading pipeline's convention for naming a companion alpha/opacity attribute and primvarnames given the full name of a color-valued attribute.

USDUTILS_API TfToken UsdUtilsGetMaterialsScopeName ( const bool  forceDefault = false)

Get the name of the USD prim under which materials are expected to be authored.

The scope name can be configured in the metadata of a plugInfo.json file like so:

* "UsdUtilsPipeline": {
* "MaterialsScopeName": "SomeScopeName"
* }
*

If forceDefault is true, any value specified in a plugInfo.json will be ignored and the built-in default will be returned. This is primarily used for unit testing purposes as a way to ignore any site-based configuration.

USDUTILS_API TfToken UsdUtilsGetModelNameFromRootLayer ( const SdfLayerHandle &  rootLayer)

Returns the model name associated with a given root layer.

In order, it looks for defaultPrim metadata, a prim matching the filename, and then the first concrete root prim.

USDUTILS_API const TfToken& UsdUtilsGetPrefName ( )

Returns the name of the reference position used on meshes and nurbs.

By default the name is "pref".

USDUTILS_API TfToken UsdUtilsGetPrimaryCameraName ( const bool  forceDefault = false)

Get the name of the USD prim representing the primary camera.

By default the name is "main_cam".

The camera name can be configured in the metadata of a plugInfo.json file like so:

* "UsdUtilsPipeline": {
* "PrimaryCameraName": "SomeCameraName"
* }
*

If forceDefault is true, any value specified in a plugInfo.json will be ignored and the built-in default will be returned. This is primarily used for unit testing purposes as a way to ignore any site-based configuration.

USDUTILS_API const TfToken& UsdUtilsGetPrimaryUVSetName ( )

Returns the name of the primary UV set used on meshes and nurbs.

By default the name is "st".

USDUTILS_API UsdPrim UsdUtilsGetPrimAtPathWithForwarding ( const UsdStagePtr &  stage,
const SdfPath path 
)

If a valid UsdPrim already exists at path on the USD stage stage, returns it.

It not, it checks to see if the path belongs to a prim underneath an instance and returns the corresponding prototype prim.

This returns an invalid UsdPrim if no corresponding prototype prim can be found and if no prim exists at the path.

This method is similar to UsdStage::GetPrimAtPath(), in that it will never author scene description, and therefore is safe to use as a "reader" in the Usd multi-threading model.

USDUTILS_API const std::set<UsdUtilsRegisteredVariantSet>& UsdUtilsGetRegisteredVariantSets ( )

Certain variant sets can be registered with the system.

See Also
UsdUtilsRegisteredVariantSet Returns the set of UsdUtilsRegisteredVariantSet objects that are registered with the pipeline.

This list will be empty until one or more plugInfo.json files discoverable by your USD installation contain an entry in the UsdUtilsPipeline group like the following:

* "UsdUtilsPipeline": {
* "RegisteredVariantSets": [
* "modelingVariant": {
* "selectionExportPolicy": {
* "always"
* }
* },
* "standin": {
* "selectionExportPolicy": {
* "never"
* }
* }
* ]
* }
*
USDUTILS_API UsdPrim UsdUtilsUninstancePrimAtPath ( const UsdStagePtr &  stage,
const SdfPath path 
)

Given a path, uninstances all the instanced prims in the namespace chain and returns the resulting prim at the requested path.

Returns a NULL prim if the given path doesn't exist and does not correspond to a valid prim inside a prototype.