24 #ifndef PXR_IMAGING_HD_RPRIM_COLLECTION_H
25 #define PXR_IMAGING_HD_RPRIM_COLLECTION_H
28 #include "pxr/imaging/hd/api.h"
29 #include "pxr/imaging/hd/version.h"
30 #include "pxr/imaging/hd/repr.h"
31 #include "pxr/usd/sdf/path.h"
36 PXR_NAMESPACE_OPEN_SCOPE
67 HdRprimCollection(
TfToken const& name,
69 bool forcedRepr=
false,
81 HdRprimCollection(
TfToken const& name,
84 bool forcedRepr=
false,
89 HdRprimCollection(HdRprimCollection
const& col);
93 virtual ~HdRprimCollection();
120 return _reprSelector;
124 _reprSelector = reprSelector;
127 bool IsForcedRepr()
const {
131 void SetForcedRepr(
bool flag) {
181 TfToken const& GetMaterialTag()
const;
184 size_t ComputeHash()
const;
187 size_t operator()(HdRprimCollection
const& value)
const {
188 return value.ComputeHash();
193 template <
class HashState>
194 friend void TfHashAppend(HashState &h, HdRprimCollection
const &rc) {
204 bool operator==(HdRprimCollection
const & lhs)
const;
206 bool operator!=(HdRprimCollection
const & lhs)
const;
210 friend std::ostream & operator <<(std::ostream &out,
211 HdRprimCollection
const & v);
217 SdfPathVector _rootPaths;
218 SdfPathVector _excludePaths;
223 std::ostream&
operator<<(std::ostream& out, HdRprimCollection
const & v);
227 size_t hash_value(HdRprimCollection
const &col);
230 PXR_NAMESPACE_CLOSE_SCOPE
232 #endif //PXR_IMAGING_HD_RPRIM_COLLECTION_H
HdReprSelector const & GetReprSelector() const
Returns the representation name.
HD_API SdfPathVector const & GetRootPaths() const
Returns the paths at which all Rprims must be rooted to be included in this collection.
HD_API void SetMaterialTag(TfToken const &tag)
A MaterialTag can be used to ensure only prims whos material have a matching tag will end up in the c...
HD_API SdfPathVector const & GetExcludePaths() const
Returns the excluded paths.
HD_API void SetRootPaths(SdfPathVector const &rootPaths)
Sets all root paths for this collection, replacing any existing paths that were present previously...
HD_API HdRprimCollection CreateInverseCollection() const
Constructs and returns a collection with the root and exclude paths swapped.
Token for efficient comparison, assignment, and hashing of known strings.
TfToken const & GetName() const
Returns the semantic name of this collection.
HD_API void SetExcludePaths(SdfPathVector const &excludePaths)
Sets all exclude paths for this collection.
A named, semantic collection of objects.
A path value used to locate objects in layers or scenegraphs.
void SetName(TfToken const &name)
Sets the semantic name of this collection.
GF_API std::ostream & operator<<(std::ostream &, const GfBBox3d &)
Output a GfBBox3d using the format [(range) matrix zeroArea].
HD_API void SetRootPath(SdfPath const &rootPath)
Sets the path at which all Rprims must be rooted to be included in this collection, replacing any existing root paths that were previously specified.
Describes one or more authored display representations for an rprim.
TfToken class for efficient string referencing and hashing, plus conversions to and from stl string c...