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, factory
-
-
Constructor Summary
Constructors Constructor Description AbstractActiveResource(SchedulerModel model, long capacity, String name, String id)
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description void
addObserver(IActiveResourceStateSensor observer)
static void
cleanProcesses()
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)
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 Detail
-
AbstractActiveResource
public AbstractActiveResource(SchedulerModel model, long capacity, String name, String id)
-
-
Method Detail
-
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 abstract void doProcessing(ISchedulableProcess process, int resourceServiceID, double demand)
-
doProcessing
protected void doProcessing(ISchedulableProcess process, int resourceServiceID, Map<String,Serializable> parameterMap, double demand)
-
enqueue
protected abstract void enqueue(ISchedulableProcess process)
-
dequeue
protected abstract void dequeue(ISchedulableProcess process)
-
cleanProcesses
public static void cleanProcesses()
-
notifyTerminated
public void notifyTerminated(ISchedulableProcess simProcess)
- Specified by:
notifyTerminated
in interfaceIActiveResource
-
addObserver
public void addObserver(IActiveResourceStateSensor observer)
- Specified by:
addObserver
in interfaceIActiveResource
-
removeObserver
public void removeObserver(IActiveResourceStateSensor observer)
- Specified by:
removeObserver
in interfaceIActiveResource
-
fireStateChange
protected void fireStateChange(long state, int instanceId)
-
fireDemandCompleted
protected void fireDemandCompleted(ISchedulableProcess simProcess)
-
-