Loading...
Searching...
No Matches
valueKey.h
1//
2// Copyright 2025 Pixar
3//
4// Licensed under the terms set forth in the LICENSE.txt file available at
5// https://openusd.org/license.
6//
7#ifndef PXR_EXEC_EXEC_VALUE_KEY_H
8#define PXR_EXEC_EXEC_VALUE_KEY_H
9
10#include "pxr/pxr.h"
11
12#include "pxr/exec/exec/api.h"
13
14#include "pxr/exec/esf/object.h"
15
16#include "pxr/base/tf/token.h"
17
18#include <string>
19#include <utility>
20
21PXR_NAMESPACE_OPEN_SCOPE
22
29{
30public:
31 ExecValueKey(EsfObject&& provider, const TfToken& computationName)
32 : _provider(std::move(provider))
33 , _computationName(computationName)
34 {}
35
37 const EsfObject& GetProvider() const {
38 return _provider;
39 }
40
42 const TfToken& GetComputationName() const {
43 return _computationName;
44 }
45
49 EXEC_API
50 std::string GetDebugName() const;
51
52private:
53 EsfObject _provider;
54 TfToken _computationName;
55};
56
57PXR_NAMESPACE_CLOSE_SCOPE
58
59#endif
Holds an implementation of EsfObjectInterface in a fixed-size buffer.
Definition: object.h:150
Specifies a computed value.
Definition: valueKey.h:29
const EsfObject & GetProvider() const
Returns the provider object of the requested value.
Definition: valueKey.h:37
const TfToken & GetComputationName() const
Returns the name of the requested computation.
Definition: valueKey.h:42
EXEC_API std::string GetDebugName() const
Return a human-readable description of this value key for diagnostic purposes.
Token for efficient comparison, assignment, and hashing of known strings.
Definition: token.h:71
TfToken class for efficient string referencing and hashing, plus conversions to and from stl string c...