24 #ifndef PXR_IMAGING_HD_SCENE_INDEX_PRIM_VIEW_H 25 #define PXR_IMAGING_HD_SCENE_INDEX_PRIM_VIEW_H 29 #include "pxr/imaging/hd/api.h" 31 #include "pxr/usd/sdf/path.h" 34 PXR_NAMESPACE_OPEN_SCOPE
70 inline const SdfPath &operator*()
const;
73 const_iterator& operator++();
75 inline void SkipDescendants();
76 inline bool operator==(
const const_iterator &other)
const;
77 inline bool operator!=(
const const_iterator &other)
const;
83 const_iterator(HdSceneIndexBaseRefPtr
const &inputSceneIndex,
85 const_iterator(HdSceneIndexBaseRefPtr
const &inputSceneIndex);
87 HdSceneIndexBaseRefPtr
const _inputSceneIndex;
88 std::vector<_StackFrame> _stack;
89 bool _skipDescendants;
97 const const_iterator &begin()
const;
100 const const_iterator &end()
const;
103 const const_iterator _begin;
104 const const_iterator _end;
108 HdSceneIndexPrimView::const_iterator::_StackFrame
110 std::vector<SdfPath> paths;
113 bool operator==(
const _StackFrame &other)
const {
114 return paths == other.paths && index == other.index;
119 HdSceneIndexPrimView::const_iterator::operator*()
const 121 const _StackFrame &frame = _stack.back();
122 return frame.paths[frame.index];
126 HdSceneIndexPrimView::const_iterator::SkipDescendants()
128 _skipDescendants =
true;
133 const const_iterator &other)
const 135 return _stack == other._stack;
139 HdSceneIndexPrimView::const_iterator::operator!=(
140 const const_iterator &other)
const 142 return !(*
this == other);
145 PXR_NAMESPACE_CLOSE_SCOPE
Standard pointer typedefs.
A range to iterate over all descendants of a given prim (including the prim itself) in a scene index ...
AR_API bool operator==(const ArAssetInfo &lhs, const ArAssetInfo &rhs)
Abstract interface to scene data.
A path value used to locate objects in layers or scenegraphs.
#define TF_DECLARE_REF_PTRS(type)
Define standard ref pointer types.
VT_API bool operator==(VtDictionary const &, VtDictionary const &)
Equality comparison.