Loading...
Searching...
No Matches
ExecSystem Class Reference

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
 
ExecSystemoperator= (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
 

Detailed Description

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.

Definition at line 43 of file system.h.

Constructor & Destructor Documentation

◆ ExecSystem()

EXEC_API ExecSystem ( EsfStage &&  stage)
explicitprotected

Construct an exec system for computing values on stage.

Member Function Documentation

◆ _ChangeTime()

EXEC_API void _ChangeTime ( const EfTime time)
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.

◆ _Compute()

EXEC_API void _Compute ( const VdfSchedule schedule,
const VdfRequest &  computeRequest 
)
protected

Computes the values in the computeRequest using the provided schedule.

◆ _ParallelForEachRequest()

EXEC_API void _ParallelForEachRequest ( TfFunctionRef< void(Exec_RequestImpl &)>  f) const
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.

Friends And Related Function Documentation

◆ Exec_RequestImpl

friend class Exec_RequestImpl
friend

Definition at line 92 of file system.h.


The documentation for this class was generated from the following file: