7#ifndef PXR_USD_SDF_ASSET_PATH_H
8#define PXR_USD_SDF_ASSET_PATH_H
13#include "pxr/usd/sdf/api.h"
19PXR_NAMESPACE_OPEN_SCOPE
39 authoredPath = authoredPath_;
44 evaluatedPath = evaluatedPath_;
49 resolvedPath = resolvedPath_;
56 std::string authoredPath;
57 std::string evaluatedPath;
58 std::string resolvedPath;
98 const std::string &resolvedPath);
115 return _authoredPath == rhs._authoredPath &&
116 _evaluatedPath == rhs._evaluatedPath &&
117 _resolvedPath == rhs._resolvedPath;
123 return !(*
this == rhs);
132 return !(rhs < *
this);
144 return !(*
this < rhs);
170 return _authoredPath;
175 return std::move(_authoredPath);
187 return _evaluatedPath;
192 return std::move(_evaluatedPath);
200 return _evaluatedPath.empty() ? _authoredPath : _evaluatedPath;
206 _evaluatedPath.empty() ? _authoredPath : _evaluatedPath);
216 return _resolvedPath;
221 return std::move(_resolvedPath);
232 _authoredPath = authoredPath;
238 _evaluatedPath = evaluatedPath;
243 _resolvedPath = resolvedPath;
250 lhs._authoredPath.swap(rhs._authoredPath);
251 lhs._evaluatedPath.swap(rhs._evaluatedPath);
252 lhs._resolvedPath.swap(rhs._resolvedPath);
256 std::string _authoredPath;
259 std::string _evaluatedPath;
261 std::string _resolvedPath;
277PXR_NAMESPACE_CLOSE_SCOPE
Contains an asset path and optional evaluated and resolved paths.
void SetAuthoredPath(const std::string &authoredPath)
Sets the authored path.
void SetEvaluatedPath(const std::string &evaluatedPath)
Sets the evaluated path.
std::string GetAuthoredPath() const &&
Overload for rvalues, move out the asset path.
SDF_API SdfAssetPath(const std::string &authoredPath, const std::string &resolvedPath)
Construct an asset path with authoredPath and an associated resolvedPath.
std::string GetResolvedPath() const &&
Overload for rvalues, move out the asset path.
bool operator<=(const SdfAssetPath &rhs) const
Less than or equal operator.
bool operator>=(const SdfAssetPath &rhs) const
Greater than or equal operator.
const std::string & GetEvaluatedPath() const &
Return the evaluated asset path, if any.
const std::string & GetResolvedPath() const &
Return the resolved asset path, if any.
SDF_API SdfAssetPath(const std::string &authoredPath)
Construct an asset path with authoredPath and no associated evaluated or resolved path.
std::string GetAssetPath() const &&
Overload for rvalues, move out the asset path.
SDF_API bool operator<(const SdfAssetPath &rhs) const
Ordering first by asset path, resolved path, then by evaluated path.
bool operator!=(const SdfAssetPath &rhs) const
Inequality operator.
const std::string & GetAssetPath() const &
Return the asset path.
SDF_API SdfAssetPath(const SdfAssetPathParams ¶ms)
Construct an asset path using a SdfAssetPathParams object.
void SetResolvedPath(const std::string &resolvedPath)
Sets the resolved path. This value is the result of asset resolution.
size_t GetHash() const
Hash function.
const std::string & GetAuthoredPath() const &
Returns the asset path as it was authored in the original layer.
bool operator==(const SdfAssetPath &rhs) const
Equality, including the evaluated and resolved paths.
std::string GetEvaluatedPath() const &&
Overload for rvalues, move out the evaluated path.
bool operator>(const SdfAssetPath &rhs) const
Greater than operator.
SDF_API SdfAssetPath()
Construct an empty asset path.
Helper class for explicitly setting values when creating a SdfAssetPath.
static size_t Combine(Args &&... args)
Produce a hash code by combining the hash codes of several objects.
GF_API std::ostream & operator<<(std::ostream &, const GfBBox3d &)
Output a GfBBox3d using the format [(range) matrix zeroArea].