![]() |
|
Base implementation of a system to procedurally compute values based on scene description and computation definitions. More...
#include <system.h>
Inheritance diagram for ExecSystem:Classes | |
| class | _ChangeProcessor |
| Public API to deliver scene changes from ExecSystem derived classes. More... | |
| class | Diagnostics |
| Utility class with various diagnostic functions for ExecSystem. More... | |
Protected Member Functions | |
| EXEC_API | ExecSystem (EsfStage &&stage) |
Construct an exec system for computing values on stage. | |
| ExecSystem (const ExecSystem &)=delete | |
| ExecSystem & | operator= (const ExecSystem &)=delete |
| EXEC_API void | _ChangeTime (const EfTime &time) |
| Changes time on the system. | |
| EXEC_API void | _Compute (const VdfSchedule &schedule, const VdfRequest &computeRequest) |
Computes the values in the computeRequest using the provided schedule. | |
| EXEC_API void | _ParallelForEachRequest (TfFunctionRef< void(Exec_RequestImpl &)> f) const |
Invoke f on each outstanding exec request. | |
Friends | |
| class | Exec_RequestImpl |
Base implementation of a system to procedurally compute values based on scene description and computation definitions.
ExecSystem owns all the structures necessary to compile, schedule and evaluate requested computation values. Derived classes are responsible for interfacing with the underlying scene description.
|
explicitprotected |
Construct an exec system for computing values on stage.
|
protected |
Changes time on the system.
This stores the new time value in the time input node output, invalidates all time dependent computed values, and notifies requests of the change in time.
|
protected |
Computes the values in the computeRequest using the provided schedule.
|
protected |
Invoke f on each outstanding exec request.
f is executed with the request tracker mutex held so it must not re-enter the request tracker. This method may execute f for multiple requests concurrently.
|
friend |