Class ForkedBehaviourProcess

java.lang.Object
de.uka.ipd.sdq.simulation.abstractsimengine.SimulationElement
de.uka.ipd.sdq.simulation.abstractsimengine.AbstractSimEntityDelegator
de.uka.ipd.sdq.simulation.abstractsimengine.AbstractSimProcessDelegator
de.uka.ipd.sdq.simucomframework.SimuComSimProcess
de.uka.ipd.sdq.simucomframework.fork.ForkedBehaviourProcess
All Implemented Interfaces:
de.uka.ipd.sdq.scheduler.ISchedulableProcess, de.uka.ipd.sdq.simulation.abstractsimengine.IEntity, de.uka.ipd.sdq.simulation.abstractsimengine.ISimProcess, de.uka.ipd.sdq.simulation.abstractsimengine.ISimProcessListener

public abstract class ForkedBehaviourProcess extends SimuComSimProcess
Base class for ForkBehaviours. Generator creates a specialisation of this and uses it to execute actions in parallel
  • Field Details

    • forkContext

      protected final SimuComContext forkContext
    • assemblyContextID

      protected final String assemblyContextID
  • Constructor Details

    • ForkedBehaviourProcess

      public ForkedBehaviourProcess(Context context, String assemblyContextID, boolean isAsync, de.uka.ipd.sdq.scheduler.resources.active.IResourceTableManager resourceTableManager)
    • ForkedBehaviourProcess

      public ForkedBehaviourProcess(Context context, String assemblyContextID, boolean isAsync, int priority, de.uka.ipd.sdq.scheduler.resources.active.IResourceTableManager resourceTableManager)
  • Method Details

    • createForkContext

      protected SimuComContext createForkContext(Context context)
      Factory method for the fork context used in the forked behaviour
      Parameters:
      context -
      Returns:
    • internalLifeCycle

      protected void internalLifeCycle()
      Specified by:
      internalLifeCycle in class SimuComSimProcess
    • executeBehaviour

      protected abstract void executeBehaviour()
      Template method filled by the generate with the parallel behaviour specified in the PCM's fork action
    • isAsync

      public boolean isAsync()
    • isTerminated

      public boolean isTerminated()
      Specified by:
      isTerminated in interface de.uka.ipd.sdq.simulation.abstractsimengine.ISimProcess
      Overrides:
      isTerminated in class de.uka.ipd.sdq.simulation.abstractsimengine.AbstractSimProcessDelegator