24#ifndef PXR_USD_PCP_LAYER_STACK_IDENTIFIER_H
25#define PXR_USD_PCP_LAYER_STACK_IDENTIFIER_H
30#include "pxr/usd/pcp/api.h"
31#include "pxr/usd/pcp/expressionVariablesSource.h"
38PXR_NAMESPACE_OPEN_SCOPE
73 explicit operator bool()
const;
77 bool operator==(
const This &rhs)
const;
78 bool operator!=(
const This &rhs)
const
80 return !(rhs == *
this);
84 bool operator<(
const This &rhs)
const;
85 bool operator<=(
const This& rhs)
const
87 return !(rhs < *
this);
89 bool operator>(
const This& rhs)
const
93 bool operator>=(
const This& rhs)
const
95 return !(*
this < rhs);
100 size_t operator()(
const This & x)
const
105 size_t GetHash()
const
125 size_t _ComputeHash()
const;
131template <
typename HashState>
135 h.Append(x.GetHash());
167PXR_NAMESPACE_CLOSE_SCOPE
An asset resolver context allows clients to provide additional data to the resolver for use during re...
Represents the layer stack associated with a set of expression variables.
Arguments used to identify a layer stack.
PCP_API PcpLayerStackIdentifier(const SdfLayerHandle &rootLayer, const SdfLayerHandle &sessionLayer=TfNullPtr, const ArResolverContext &pathResolverContext=ArResolverContext(), const PcpExpressionVariablesSource &expressionVariablesOverrideSource=PcpExpressionVariablesSource())
Construct with given pointers.
const ArResolverContext pathResolverContext
The path resolver context used for resolving asset paths. (optional)
const PcpExpressionVariablesSource expressionVariablesOverrideSource
The source for expression variables that compose over the expression variables in this layer stack.
PCP_API PcpLayerStackIdentifier()
Construct with all empty pointers.
const SdfLayerHandle rootLayer
The root layer.
const SdfLayerHandle sessionLayer
The session layer (optional).
A scene description container that can combine with other such containers to form simple component as...
A user-extensible hashing mechanism for use with runtime hash tables.
GF_API std::ostream & operator<<(std::ostream &, const GfBBox3d &)
Output a GfBBox3d using the format [(range) matrix zeroArea].
size_t hash_value(const half h)
Overload hash_value for half.
PCP_API std::ostream & PcpIdentifierFormatBaseName(std::ostream &)
Manipulator to cause the next PcpLayerStackIdentifier written to the ostream to write the base name o...
PCP_API std::ostream & PcpIdentifierFormatRealPath(std::ostream &)
Manipulator to cause the next PcpLayerStackIdentifier written to the ostream to write the real path o...
PCP_API std::ostream & PcpIdentifierFormatIdentifier(std::ostream &)
Manipulator to cause the next PcpLayerStackIdentifier written to the ostream to write the identifier ...