7#ifndef PXR_USD_PCP_LAYER_STACK_IDENTIFIER_H
8#define PXR_USD_PCP_LAYER_STACK_IDENTIFIER_H
13#include "pxr/usd/pcp/api.h"
14#include "pxr/usd/pcp/expressionVariablesSource.h"
21PXR_NAMESPACE_OPEN_SCOPE
56 explicit operator bool()
const;
60 bool operator==(
const This &rhs)
const;
61 bool operator!=(
const This &rhs)
const
63 return !(rhs == *
this);
67 bool operator<(
const This &rhs)
const;
68 bool operator<=(
const This& rhs)
const
70 return !(rhs < *
this);
72 bool operator>(
const This& rhs)
const
76 bool operator>=(
const This& rhs)
const
78 return !(*
this < rhs);
83 size_t operator()(
const This & x)
const
88 size_t GetHash()
const
108 size_t _ComputeHash()
const;
114template <
typename HashState>
118 h.Append(x.GetHash());
150PXR_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].
std::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 ...