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
capacity
Fields inherited from class de.uka.ipd.sdq.simulation.abstractsimengine.AbstractSimEntityDelegator
delegate
Fields inherited from interface de.uka.ipd.sdq.simulation.abstractsimengine.IEntity
NULL
-
Constructor Summary
ConstructorDescriptionAbstractActiveResource
(SchedulerModel model, long capacity, String name, String id, IResourceTableManager resourceTableManager) -
Method Summary
Modifier and TypeMethodDescriptionvoid
addObserver
(IActiveResourceStateSensor observer) protected abstract void
dequeue
(ISchedulableProcess process) protected abstract void
doProcessing
(ISchedulableProcess process, int resourceServiceID, double demand) protected void
doProcessing
(ISchedulableProcess process, int resourceServiceID, Map<String, Serializable> parameterMap, double demand) protected abstract void
enqueue
(ISchedulableProcess process) protected void
fireDemandCompleted
(ISchedulableProcess simProcess) protected void
fireStateChange
(long state, int instanceId) void
notifyTerminated
(ISchedulableProcess simProcess) final void
process
(ISchedulableProcess process, int resourceServiceID, Map<String, Serializable> parameterMap, double demand) Processes the specified demand of the process.void
removeObserver
(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 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:IActiveResource
Processes the specified demand of the process. With additional parameters for the resource.- Specified by:
process
in interfaceIActiveResource
-
doProcessing
protected void doProcessing(ISchedulableProcess process, int resourceServiceID, Map<String, Serializable> parameterMap, double demand) -
notifyTerminated
- Specified by:
notifyTerminated
in interfaceIActiveResource
-
addObserver
- Specified by:
addObserver
in interfaceIActiveResource
-
removeObserver
- Specified by:
removeObserver
in interfaceIActiveResource
-
fireStateChange
protected void fireStateChange(long state, int instanceId) -
fireDemandCompleted
-