Class PeriodicTask
java.lang.Object
de.pirckheimer_gymnasium.engine_pi.event.PeriodicTask
- All Implemented Interfaces:
FrameUpdateListener
Eine periodische Aufgabe, die regelmäßig ausgeführt wird.
- Author:
- Niklas Keller, Josef Friedrich
- See Also:
-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionPeriodicTask(double intervalInSeconds, Runnable runnable) Erzeugt eine neue periodische Aufgabe ohne eine Referenz auf den übergeordneten Behälter, in dem diese periodische Aufgabe angemeldet wurde.PeriodicTask(double intervalInSeconds, Runnable runnable, FrameUpdateListenerContainer container) Erzeugt eine neue periodische Aufgabe, die eine Referenz auf den übergeordneten Behälter verlangt, in dem diese periodische Aufgabe angemeldet wurde. -
Method Summary
Modifier and TypeMethodDescriptiondoubleGibt das aktuelle Intervall der periodischen Aufgabe aus.voidonFrameUpdate(double deltaSeconds) Diese Methode wird bei einem (angemeldeten) Objekt bei jeden Einzelbild erneut aufgerufen.voidpause()Pausiert die periodische Ausführung der Aufgabe.voidresume()Führt die periodische Aufgabe fort.voidsetInterval(double interval) Setzt das Intervall dieses periodischen Tasks neu.voidtoggle()Schaltet je nach Zustand zwischen den Zuständen pausiert und nicht pausiert hin und her.voidStoppt die periodische Ausführung.
-
Field Details
-
isPaused
public boolean isPausedGibt an, ob die Aufgabe pausiert ist.
-
-
Constructor Details
-
PeriodicTask
public PeriodicTask(double intervalInSeconds, Runnable runnable, FrameUpdateListenerContainer container) Erzeugt eine neue periodische Aufgabe, die eine Referenz auf den übergeordneten Behälter verlangt, in dem diese periodische Aufgabe angemeldet wurde.- Parameters:
intervalInSeconds- Die Zeit zwischen den Ausführungen in Sekunden.runnable- Ein Objekt vom TypRunnable, das eine ausführbare Methode enthält oder ein Lambda-Ausdruck.container- Eine Referenz auf den übergeordneten Behälter, in dem diese periodische Aufgabe angemeldet wurde. Diese Referenz wird dazu verwendet, um die periodische Ausführung abzumelden und dadurch zu stoppen.
-
PeriodicTask
Erzeugt eine neue periodische Aufgabe ohne eine Referenz auf den übergeordneten Behälter, in dem diese periodische Aufgabe angemeldet wurde.- Parameters:
intervalInSeconds- Die Zeit zwischen den Ausführungen in Sekunden.runnable- Ein Objekt vom TypRunnable, das eine ausführbare Methode enthält oder ein Lambda-Ausdruck.
-
-
Method Details
-
setInterval
Setzt das Intervall dieses periodischen Tasks neu.- Parameters:
interval- Das neue Intervall. Zeit zwischen den Ausführungen in Sekunden. Muss größer als 0 sein.
-
getInterval
Gibt das aktuelle Intervall der periodischen Aufgabe aus.- Returns:
- Das aktuelle Intervall. Die Zeit zwischen den Ausführungen in Sekunden.
-
pause
public void pause()Pausiert die periodische Ausführung der Aufgabe. -
resume
public void resume()Führt die periodische Aufgabe fort. -
toggle
public void toggle()Schaltet je nach Zustand zwischen den Zuständen pausiert und nicht pausiert hin und her. -
unregister
public void unregister()Stoppt die periodische Ausführung. Sie kann dann nicht mehr neu gestartet werden. -
onFrameUpdate
Description copied from interface:FrameUpdateListenerDiese Methode wird bei einem (angemeldeten) Objekt bei jeden Einzelbild erneut aufgerufen.- Specified by:
onFrameUpdatein interfaceFrameUpdateListener- Parameters:
deltaSeconds- Die Zeit in Sekunden, die seit der letzten Aktualisierung vergangen ist.
-