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:
java.io.Serializable
public abstract class SimulationProcessor<T extends DigitalTwinBase> extends java.lang.Object implements java.io.SerializableProcesses simulation events for a digital twin.- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description SimulationProcessor()Default constructor.
-
Method Summary
Modifier and Type Method Description ProcessingResultonInitSimulation(InitSimulationContext context, T instance, java.util.Date epoch)Optional method that is called per-instance when a simulation is started.abstract ProcessingResultprocessModel(ProcessingContext context, T instance, java.util.Date epoch)Processes simulation events for a real-time digital twin.
-
-
-
Method Detail
-
processModel
public abstract ProcessingResult processModel(ProcessingContext context, T instance, java.util.Date epoch)
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.UpdateDigitalTwinto update the digital twin, orProcessingResult.NoUpdateto ignore the changes.
-
onInitSimulation
public ProcessingResult onInitSimulation(InitSimulationContext context, T instance, java.util.Date epoch)
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.UpdateDigitalTwinorProcessingResult.NoUpdate. Default behavior:ProcessingResult.NoUpdate.
-
-