24 #ifndef PXR_USD_PCP_SITE_H
25 #define PXR_USD_PCP_SITE_H
28 #include "pxr/usd/pcp/api.h"
30 #include "pxr/usd/sdf/path.h"
34 #include <boost/operators.hpp>
37 PXR_NAMESPACE_OPEN_SCOPE
46 class PcpSite : boost::totally_ordered<PcpSite>
58 PcpSite(
const PcpLayerStackPtr &,
const SdfPath & path );
60 PcpSite(
const SdfLayerHandle &,
const SdfPath & path );
65 bool operator==(
const PcpSite &rhs)
const;
68 bool operator<(
const PcpSite &rhs)
const;
72 size_t operator()(
const PcpSite &)
const;
95 PcpSiteStr(
const SdfLayerHandle &,
const SdfPath & path );
102 bool operator==(
const PcpSiteStr &rhs)
const;
105 bool operator<(
const PcpSiteStr &rhs)
const;
109 size_t operator()(
const PcpSiteStr &)
const;
120 PcpLayerStackRefPtr layerStack;
127 PcpLayerStackSite(
const PcpLayerStackRefPtr &,
const SdfPath & path );
130 bool operator==(
const PcpLayerStackSite &rhs)
const;
133 bool operator<(
const PcpLayerStackSite &rhs)
const;
137 size_t operator()(
const PcpLayerStackSite &)
const;
150 hash_value(
const PcpSite& site)
152 return PcpSite::Hash()(site);
159 return PcpSiteStr::Hash()(site);
166 return PcpLayerStackSite::Hash()(site);
169 PXR_NAMESPACE_CLOSE_SCOPE
171 #endif // PXR_USD_PCP_SITE_H
A site specifies a path in a layer stack of scene description.
Standard pointer typedefs.
Represents a stack of layers that contribute opinions to composition.
A site specifies a path in a layer stack of scene description.
#define TF_DECLARE_WEAK_AND_REF_PTRS(type)
Define standard weak, ref, and vector pointer types.
A "string-based" version of PcpSite.
A path value used to locate objects in layers or scenegraphs.
A "string"-based version of PcpLayerStackIdentifier.
GF_API std::ostream & operator<<(std::ostream &, const GfBBox3d &)
Output a GfBBox3d using the format [(range) matrix zeroArea].
Arguments used to identify a layer stack.