![]() |
|
Singleton used to register and access value types used by exec computations. More...
#include <typeRegistry.h>
Public Member Functions | |
| ExecTypeRegistry (ExecTypeRegistry const &)=delete | |
| ExecTypeRegistry & | operator= (ExecTypeRegistry const &)=delete |
| template<typename ValueType > | |
| TfType | CheckForRegistration () const |
Confirms that ValueType has been registered. | |
| EXEC_API VdfVector | CreateVector (const VtValue &value) const |
Construct a VdfVector whose value is copied from value. | |
| EXEC_API Exec_ValueExtractor | GetExtractor (TfType type) const |
| Returns an extractor that produces a VtValue from values held in execution. | |
Static Public Member Functions | |
| static EXEC_API const ExecTypeRegistry & | GetInstance () |
| Provides access to the singleton instance, first ensuring it is constructed. | |
| template<typename ValueType > | |
| static void | RegisterType (const ValueType &fallback) |
Registers ValueType as a value type that exec computations can use for input and output values, with the fallback value fallback. | |
Friends | |
| class | TfSingleton< ExecTypeRegistry > |
Singleton used to register and access value types used by exec computations.
Value types that are used for exec computation input and output values must be registered with this registry.
The registry is initialized with all value types that Sdf suports for attribute and metadata values.
Definition at line 47 of file typeRegistry.h.
|
inline |
Confirms that ValueType has been registered.
If ValueType has been registered with the ExecTypeRegistry, the corresponding TfType is returned.
ValueType has not been registerd, a fatal error is emitted. Definition at line 96 of file typeRegistry.h.
Construct a VdfVector whose value is copied from value.
| EXEC_API Exec_ValueExtractor GetExtractor | ( | TfType | type | ) | const |
|
static |
Provides access to the singleton instance, first ensuring it is constructed.
|
inlinestatic |
Registers ValueType as a value type that exec computations can use for input and output values, with the fallback value fallback.
In any circumstance that requires a fallback value, i.e., when an arbitrary value of type ValueType must be produced, fallback will be used.
ValueType is registered more than once, all calls must specify the same fallback; otherwise, which fallback value wins is indeterminate. If an equality operator is defined for ValueType, that operator will be used to verify that all fallback values have the same value. Otherwise, multiple registrations are allowed, with no verification that the fallback values match. Definition at line 77 of file typeRegistry.h.
|
friend |
Definition at line 112 of file typeRegistry.h.