Class AbstractActiveResource
- java.lang.Object
-
- de.uka.ipd.sdq.simulation.abstractsimengine.SimulationElement
-
- de.uka.ipd.sdq.simulation.abstractsimengine.AbstractSimEntityDelegator
-
- de.uka.ipd.sdq.scheduler.entities.SchedulerEntity
-
- de.uka.ipd.sdq.scheduler.resources.AbstractSimResource
-
- de.uka.ipd.sdq.scheduler.resources.active.AbstractActiveResource
-
- All Implemented Interfaces:
IActiveResource,de.uka.ipd.sdq.simulation.abstractsimengine.IEntity
- Direct Known Subclasses:
SimDelayResource,SimFCFSResource,SimProcessorSharingResource,SimProcessorSharingResourceLinuxO1,SimProcessorSharingResourceWindows
public abstract class AbstractActiveResource extends AbstractSimResource implements IActiveResource
-
-
Field Summary
-
Fields inherited from class de.uka.ipd.sdq.scheduler.resources.AbstractSimResource
capacity
-
-
Constructor Summary
Constructors Constructor Description AbstractActiveResource(SchedulerModel model, long capacity, String name, String id, IResourceTableManager resourceTableManager)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description voidaddObserver(IActiveResourceStateSensor observer)protected abstract voiddequeue(ISchedulableProcess process)protected abstract voiddoProcessing(ISchedulableProcess process, int resourceServiceID, double demand)protected voiddoProcessing(ISchedulableProcess process, int resourceServiceID, Map<String,Serializable> parameterMap, double demand)protected abstract voidenqueue(ISchedulableProcess process)protected voidfireDemandCompleted(ISchedulableProcess simProcess)protected voidfireStateChange(long state, int instanceId)voidnotifyTerminated(ISchedulableProcess simProcess)voidprocess(ISchedulableProcess process, int resourceServiceID, Map<String,Serializable> parameterMap, double demand)Processes the specified demand of the process.voidremoveObserver(IActiveResourceStateSensor observer)-
Methods inherited from class de.uka.ipd.sdq.scheduler.resources.AbstractSimResource
equals, getCapacity, getId, getName, hashCode, toString
-
Methods inherited from class de.uka.ipd.sdq.scheduler.entities.SchedulerEntity
getModel
-
Methods inherited from class de.uka.ipd.sdq.simulation.abstractsimengine.AbstractSimEntityDelegator
getEncapsulatedEntity, isScheduled, reschedule
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface de.uka.ipd.sdq.scheduler.IActiveResource
getId, getName, getQueueLengthFor, getRemainingDemand, registerProcess, start, stop, updateDemand
-
-
-
-
Constructor Detail
-
AbstractActiveResource
public AbstractActiveResource(SchedulerModel model, long capacity, String name, String id, IResourceTableManager resourceTableManager)
-
-
Method Detail
-
doProcessing
protected abstract void doProcessing(ISchedulableProcess process, int resourceServiceID, double demand)
-
enqueue
protected abstract void enqueue(ISchedulableProcess process)
-
dequeue
protected abstract void dequeue(ISchedulableProcess process)
-
process
public final void process(ISchedulableProcess process, int resourceServiceID, Map<String,Serializable> parameterMap, double demand)
Description copied from interface:IActiveResourceProcesses the specified demand of the process. With additional parameters for the resource.- Specified by:
processin interfaceIActiveResource
-
doProcessing
protected void doProcessing(ISchedulableProcess process, int resourceServiceID, Map<String,Serializable> parameterMap, double demand)
-
notifyTerminated
public void notifyTerminated(ISchedulableProcess simProcess)
- Specified by:
notifyTerminatedin interfaceIActiveResource
-
addObserver
public void addObserver(IActiveResourceStateSensor observer)
- Specified by:
addObserverin interfaceIActiveResource
-
removeObserver
public void removeObserver(IActiveResourceStateSensor observer)
- Specified by:
removeObserverin interfaceIActiveResource
-
fireStateChange
protected void fireStateChange(long state, int instanceId)
-
fireDemandCompleted
protected void fireDemandCompleted(ISchedulableProcess simProcess)
-
-