Class SimulationProcessor<T extends DigitalTwinBase>
java.lang.Object
com.scaleoutsoftware.digitaltwin.core.SimulationProcessor<T>
- Type Parameters:
T
- the type of the digital twin.
- All Implemented Interfaces:
Serializable
public abstract class SimulationProcessor<T extends DigitalTwinBase>
extends Object
implements Serializable
Processes simulation events for a digital twin.
- See Also:
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptiononInitSimulation
(InitSimulationContext context, T instance, Date epoch) Optional method that is called per-instance when a simulation is started.abstract ProcessingResult
processModel
(ProcessingContext context, T instance, Date epoch) Processes simulation events for a real-time digital twin.
-
Constructor Details
-
SimulationProcessor
public SimulationProcessor()Default constructor.
-
-
Method Details
-
processModel
Processes simulation events for a real-time digital twin.- Parameters:
context
- the processing context.instance
- the digital twin instance.epoch
- the current time of the simulation.- Returns:
ProcessingResult.UpdateDigitalTwin
to update the digital twin, orProcessingResult.NoUpdate
to ignore the changes.
-
onInitSimulation
Optional method that is called per-instance when a simulation is started. Default behavior is a no-op.
onInitSimulation can be used when internal digital twin starting state is set outside the context of a digital twins init method and may be changed between simulation runs.
- Set variables in global or shared data.
- Run a simulation.
- onInitSimulation is called (per-instance) and digital twin instances set internal state based on the values in shared data.
- Complete simulation and evaluate the result.
- Parameters:
context
- The simulation init context.instance
- The digital twin instance.epoch
- the simulation start time.- Returns:
ProcessingResult.UpdateDigitalTwin
orProcessingResult.NoUpdate
. Default behavior:ProcessingResult.NoUpdate
.
-