Class 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 Detail

      • myContext

        protected final Context myContext
      • assemblyContextID

        protected final String assemblyContextID
    • Constructor Detail

      • ForkedBehaviourProcess

        public ForkedBehaviourProcess​(Context myContext,
                                      String assemblyContextID,
                                      boolean isAsync)
      • ForkedBehaviourProcess

        public ForkedBehaviourProcess​(Context myContext,
                                      String assemblyContextID,
                                      boolean isAsync,
                                      int priority)
    • Method Detail

      • createForkContext

        protected Context createForkContext​(Context myContext)
        Factory method for the fork context used in the forked behaviour
        Parameters:
        myContext -
        Returns:
      • 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