![]() |
|
Builder class used to register invertible controller computations. More...
#include <controllerBuilder.h>
Public Types | |
| using | Callback = ExecIrResult(*)(const VdfContext &) |
| The type for forward and inverse controller computation calbacks. | |
Public Member Functions | |
| EXECIR_API | ExecIrControllerBuilder (ExecComputationBuilder &self, Callback forwardCallback, Callback inverseCallback) |
| Constructs a builder that is used to register computations that implement an invertible controller. | |
| template<typename ValueType > | |
| void | InvertibleInputAttribute (const TfToken &attributeName) |
| Registers an invertible input attribute. | |
| template<typename ValueType > | |
| void | NonInvertibleInputAttribute (const TfToken &attributeName) |
| Registers a non-invertible input attribute. | |
| template<typename ValueType > | |
| void | InvertibleOutputAttribute (const TfToken &attributeName) |
Registers an invertible output attribute; the output is inverible if invertible is true. | |
| template<typename ValueType > | |
| void | SwitchAttribute (const TfToken &attributeName) |
| Registers a switch attribute. | |
| template<typename ValueType > | |
| void | PassthroughAttribute (const TfToken &attributeName) |
| Registers a passthrough attribute. | |
Builder class used to register invertible controller computations.
This class can only be used in the context of schema computation registration. The constructor takes the self builder object that is defined by the EXEC_REGISTER_COMPUTATIONS_FOR_SCHEMA macro. The constructor also takes the callbacks that implement the forward and inverse computations for the controller. The client uses member functions to register controller atributes as inputs, outputs, switches, etc. (see the documentation on the corresonding registration methods for details). These registrations, in turn, generate the computation inputs for the callbacks (as documented in the class function documentation), as well as other computations that are required to implement invertible controllers within OpenExec.
Definition at line 108 of file controllerBuilder.h.
| using Callback = ExecIrResult(*)(const VdfContext &) |
The type for forward and inverse controller computation calbacks.
Definition at line 112 of file controllerBuilder.h.
| EXECIR_API ExecIrControllerBuilder | ( | ExecComputationBuilder & | self, |
| Callback | forwardCallback, | ||
| Callback | inverseCallback | ||
| ) |
Constructs a builder that is used to register computations that implement an invertible controller.
self is the builder that is defined by EXEC_REGISTER_COMPUTATIONS_FOR_SCHEMA. forwardCallback and inverseCallback are the callbacks that define the forward and inverse computations that implement the controller to be registered by the constructed instance.
| void InvertibleInputAttribute | ( | const TfToken & | attributeName | ) |
Registers an invertible input attribute.
Definition at line 199 of file controllerBuilder.h.
| void InvertibleOutputAttribute | ( | const TfToken & | attributeName | ) |
Registers an invertible output attribute; the output is inverible if invertible is true.
TODO: Non-invertible output attributes are not yet implemented.
Definition at line 226 of file controllerBuilder.h.
| void NonInvertibleInputAttribute | ( | const TfToken & | attributeName | ) |
Registers a non-invertible input attribute.
Definition at line 211 of file controllerBuilder.h.
| void PassthroughAttribute | ( | const TfToken & | attributeName | ) |
Registers a passthrough attribute.
Definition at line 283 of file controllerBuilder.h.
| void SwitchAttribute | ( | const TfToken & | attributeName | ) |
Registers a switch attribute.
Switch attributes hold values that change the behavior of the forward and inverse computations.
Definition at line 271 of file controllerBuilder.h.