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
UsdResolveTarget Class Reference

Defines a subrange of nodes and layers within a prim's prim index to consider when performing value resolution for the prim's attributes. More...

#include <resolveTarget.h>

Public Member Functions

const PcpPrimIndexGetPrimIndex () const
 Get the prim index of the resolve target.
 
USD_API PcpNodeRef GetStartNode () const
 Returns the node that value resolution with this resolve target will start at.
 
USD_API SdfLayerHandle GetStartLayer () const
 Returns the layer in the layer stack of the start node that value resolution with this resolve target will start at.
 
USD_API PcpNodeRef GetStopNode () const
 Returns the node that value resolution with this resolve target will stop at when the "stop at" layer is reached.
 
USD_API SdfLayerHandle GetStopLayer () const
 Returns the layer in the layer stack of the stop node that value resolution with this resolve target will stop at.
 
bool IsNull () const
 Returns true if this is a null resolve target.
 

Friends

class UsdPrim
 
class UsdPrimCompositionQueryArc
 

Detailed Description

Defines a subrange of nodes and layers within a prim's prim index to consider when performing value resolution for the prim's attributes.

A resolve target can then be passed to UsdAttributeQuery during its construction to have all of the queries made by the UsdAttributeQuery use the resolve target's subrange for their value resolution.

Resolve targets can be created via methods on UsdPrimCompositionQueryArc to to limit value resolution to a subrange of the prim's composed specs that are no stronger that arc, or a subrange of specs that is strictly stronger than that arc (optionally providing a particular layer within the arc's layer stack to further limit the range of specs).

Alternatively, resolve targets can also be created via methods on UsdPrim that can limit value resolution to either up to or stronger than the spec that would be edited when setting a value for the prim using the given UsdEditTarget.

Unlike UsdEditTarget, a UsdResolveTarget is only relevant to the prim it is created for and can only be used in a UsdAttributeQuery for attributes on this prim.

Invalidation

This object does not listen for change notification. If a consumer is holding on to a UsdResolveTarget, it is their responsibility to dispose of it in response to a resync change to the associated prim. Failing to do so may result in incorrect values or crashes due to dereferencing invalid objects.

Definition at line 56 of file resolveTarget.h.

Member Function Documentation

◆ GetPrimIndex()

const PcpPrimIndex * GetPrimIndex ( ) const
inline

Get the prim index of the resolve target.

Definition at line 62 of file resolveTarget.h.

◆ GetStartLayer()

USD_API SdfLayerHandle GetStartLayer ( ) const

Returns the layer in the layer stack of the start node that value resolution with this resolve target will start at.

◆ GetStartNode()

USD_API PcpNodeRef GetStartNode ( ) const

Returns the node that value resolution with this resolve target will start at.

◆ GetStopLayer()

USD_API SdfLayerHandle GetStopLayer ( ) const

Returns the layer in the layer stack of the stop node that value resolution with this resolve target will stop at.

◆ GetStopNode()

USD_API PcpNodeRef GetStopNode ( ) const

Returns the node that value resolution with this resolve target will stop at when the "stop at" layer is reached.

◆ IsNull()

bool IsNull ( ) const
inline

Returns true if this is a null resolve target.

Definition at line 87 of file resolveTarget.h.

Friends And Related Function Documentation

◆ UsdPrim

friend class UsdPrim
friend

Definition at line 94 of file resolveTarget.h.

◆ UsdPrimCompositionQueryArc

friend class UsdPrimCompositionQueryArc
friend

Definition at line 95 of file resolveTarget.h.


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