Class QuantumTimeSlice
java.lang.Object
edu.kit.ipd.sdq.pcm.simulation.scheduler.exact.timeslice.impl.QuantumTimeSlice
- All Implemented Interfaces:
ITimeSlice
,Cloneable
-
Field Summary
Modifier and TypeFieldDescriptionprotected int
protected int
protected int
protected double
protected double
-
Constructor Summary
ModifierConstructorDescriptionprotected
QuantumTimeSlice
(double timeslice, int quanta, int min_quanta) -
Method Summary
Modifier and TypeMethodDescriptionclone()
void
Resets the remaining time to a full timeslice.double
Returns Time until the timeslice is interrupted.void
boolean
Returns true if the timeslice is finished, false otherwise.void
punish
(int penalty) void
reset()
void
void
substractTime
(double time) Subtracts the specified amount of time from the timeslice.void
void
-
Field Details
-
remaining_time
protected double remaining_time -
timeslice
protected double timeslice -
remaining_quanta
protected int remaining_quanta -
quanta
protected int quanta -
min_quanta
protected int min_quanta
-
-
Constructor Details
-
QuantumTimeSlice
public QuantumTimeSlice(double timeslice, int quanta, int min_quanta) -
QuantumTimeSlice
protected QuantumTimeSlice()
-
-
Method Details
-
isFinished
public boolean isFinished()Description copied from interface:ITimeSlice
Returns true if the timeslice is finished, false otherwise.- Specified by:
isFinished
in interfaceITimeSlice
-
substractTime
public void substractTime(double time) Description copied from interface:ITimeSlice
Subtracts the specified amount of time from the timeslice. The remaining timeslice MUST be greater or equal than zero.- Specified by:
substractTime
in interfaceITimeSlice
-
reset
public void reset() -
fullReset
public void fullReset()Description copied from interface:ITimeSlice
Resets the remaining time to a full timeslice.- Specified by:
fullReset
in interfaceITimeSlice
-
getRemainingTime
public double getRemainingTime()Description copied from interface:ITimeSlice
Returns Time until the timeslice is interrupted.- Specified by:
getRemainingTime
in interfaceITimeSlice
-
punish
public void punish(int penalty) - Specified by:
punish
in interfaceITimeSlice
-
setExpired
public void setExpired()- Specified by:
setExpired
in interfaceITimeSlice
-
clone
- Specified by:
clone
in interfaceITimeSlice
- Overrides:
clone
in classObject
-
halfReset
public void halfReset()- Specified by:
halfReset
in interfaceITimeSlice
-
updateTimeForBoosting
public void updateTimeForBoosting()- Specified by:
updateTimeForBoosting
in interfaceITimeSlice
-
updateTimeForScheduling
public void updateTimeForScheduling()- Specified by:
updateTimeForScheduling
in interfaceITimeSlice
-