24 #ifndef PXR_USD_USD_RESOLVER_H
25 #define PXR_USD_USD_RESOLVER_H
28 #include "pxr/usd/usd/api.h"
31 #include "pxr/usd/pcp/node.h"
32 #include "pxr/usd/pcp/iterator.h"
34 #include "pxr/usd/sdf/path.h"
37 PXR_NAMESPACE_OPEN_SCOPE
55 explicit Usd_Resolver(
const PcpPrimIndex* index,
bool skipEmptyNodes =
true);
58 bool IsValid()
const {
59 return _curNode != _lastNode;
93 const SdfPath& GetLocalPath()
const;
96 return propName.
IsEmpty() ? GetLocalPath() :
97 GetLocalPath().AppendProperty(propName);
115 PcpNodeRef GetNode()
const {
return *_curNode; }
117 const SdfPath& GetLocalPath()
const {
return _curNode->GetPath(); }
119 return propName.
IsEmpty() ? GetLocalPath() :
120 GetLocalPath().AppendProperty(propName);
124 friend class Usd_Resolver;
127 const SdfLayerRefPtrVector::const_iterator& curLayer)
128 : _curNode(curNode), _curLayer(curLayer) { }
131 SdfLayerRefPtrVector::const_iterator _curLayer;
137 Position GetPosition()
const;
141 void _SkipEmptyNodes();
144 bool _skipEmptyNodes;
148 SdfLayerRefPtrVector::const_iterator _curLayer;
149 SdfLayerRefPtrVector::const_iterator _lastLayer;
152 PXR_NAMESPACE_CLOSE_SCOPE
154 #endif // PXR_USD_USD_RESOLVER_H
PcpPrimIndex is an index of the all sites of scene description that contribute opinions to a specific...
PcpNode represents a node in an expression tree for compositing scene description.
Token for efficient comparison, assignment, and hashing of known strings.
Object used to iterate over nodes in the prim index graph in strong-to-weak order.
A path value used to locate objects in layers or scenegraphs.
bool IsEmpty() const
Returns true iff this token contains the empty string "".