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
-
Field Summary
Fields inherited from class de.uka.ipd.sdq.scheduler.resources.AbstractSimResource
capacityFields inherited from class de.uka.ipd.sdq.simulation.abstractsimengine.AbstractSimEntityDelegator
delegateFields inherited from interface de.uka.ipd.sdq.simulation.abstractsimengine.IEntity
NULL -
Constructor Summary
ConstructorsConstructorDescriptionAbstractActiveResource(SchedulerModel model, long capacity, String name, String id, IResourceTableManager resourceTableManager) -
Method Summary
Modifier and TypeMethodDescriptionvoidaddObserver(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) final 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, toStringMethods inherited from class de.uka.ipd.sdq.scheduler.entities.SchedulerEntity
getModelMethods inherited from class de.uka.ipd.sdq.simulation.abstractsimengine.AbstractSimEntityDelegator
getEncapsulatedEntity, isScheduled, rescheduleMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface de.uka.ipd.sdq.scheduler.IActiveResource
getId, getName, getQueueLengthFor, getRemainingDemand, registerProcess, start, stop, updateDemand
-
Constructor Details
-
AbstractActiveResource
public AbstractActiveResource(SchedulerModel model, long capacity, String name, String id, IResourceTableManager resourceTableManager)
-
-
Method Details
-
doProcessing
protected abstract void doProcessing(ISchedulableProcess process, int resourceServiceID, double demand) -
enqueue
-
dequeue
-
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
- Specified by:
notifyTerminatedin interfaceIActiveResource
-
addObserver
- Specified by:
addObserverin interfaceIActiveResource
-
removeObserver
- Specified by:
removeObserverin interfaceIActiveResource
-
fireStateChange
protected void fireStateChange(long state, int instanceId) -
fireDemandCompleted
-