Skip to Content
Lumensalis CircuitPython framework coming soon 🎉

LumensalisCP.Triggers.Timer

Module Contents

Classes

PeriodicTimerManager
PeriodicTimer

Functions

addPeriodicTaskDef

API

class LumensalisCP.Triggers.Timer.PeriodicTimerManager(main: LumensalisCP.Main.Manager.MainManager)

Bases: LumensalisCP.Main.Dependents.SubManagerBase

Initialization

update(context: LumensalisCP.IOContext.UpdateContext)

property timers

__shuffleTimers()

_addTimer(timer: LumensalisCP.Triggers.Timer.PeriodicTimer)

_updateTimer(timer: LumensalisCP.Triggers.Timer.PeriodicTimer)

_removeTimer(timer: LumensalisCP.Triggers.Timer.PeriodicTimer)

class LumensalisCP.Triggers.Timer.PeriodicTimer(interval: LumensalisCP.IOContext.TimeSpanInSeconds = 1.0, name: str = None, oneShot: bool = False, manager: LumensalisCP.Triggers.Timer.PeriodicTimerManager = None)

Bases: LumensalisCP.Triggers.Trigger

property manager : LumensalisCP.Triggers.Timer.PeriodicTimerManager

property running : bool

property lastFire : LumensalisCP.IOContext.TimeInSeconds

property nextFire : LumensalisCP.IOContext.TimeInSeconds

getInterval() → LumensalisCP.IOContext.TimeSpanInSeconds

property interval : LumensalisCP.IOContext.TimeSpanInSeconds

start(interval: LumensalisCP.IOContext.TimeSpanInSeconds | None = None)

start or restart the time

stop()

restart(interval: LumensalisCP.IOContext.TimeSpanInSeconds | LumensalisCP.IOContext.Callable | None = None, when: LumensalisCP.IOContext.TimeInSeconds | None = None)

restart the timer

addTaskDef(name: str | None = None, autoStart=True)

_timerExpired(when: float, context: LumensalisCP.IOContext.UpdateContext = None)

LumensalisCP.Triggers.Timer.addPeriodicTaskDef(name: str | None = None, period: LumensalisCP.IOContext.TimeSpanInSeconds = 1.1, main: LumensalisCP.Main.Manager.MainManager | None = None)