Scheduler

Scheduler and command plexus for use with the BunyipsLib task system.

Author

Lucas Bubner, 2024

Since

1.0.0-pre

See also

Constructors

Link copied to clipboard
constructor()
Create a new scheduler and reset static fields.

Types

Link copied to clipboard
open inner class ConditionalTask
A task that will run when a condition is met.
Link copied to clipboard
open inner class ControllerButtonCreator
Controller button trigger creator.

Inherited properties

Link copied to clipboard
protected val opMode: BunyipsOpMode

Functions

Link copied to clipboard
open fun addSubsystems(dispatch: Array<BunyipsSubsystem>)
Add subsystems to the scheduler.
Link copied to clipboard
open fun addTaskReport(className: String, isDefaultTask: Boolean, taskName: String, deltaTimeSec: Double, timeoutSec: Double)
Used internally by subsystems and tasks to report their running status statically.
Link copied to clipboard
Run a task always.
Link copied to clipboard
open fun disable()
Disable all subsystems attached to the Scheduler.
Link copied to clipboard
Create a new controller button trigger creator for the driver.
Link copied to clipboard
open fun enable()
Enable all subsystems attached to the Scheduler, unless they failed from null assertion.
Link copied to clipboard
Get all allocated tasks.
Link copied to clipboard
Get all subsystems attached to the scheduler.
Link copied to clipboard
open fun mute()
Mute Scheduler telemetry.
Link copied to clipboard
Create a new controller button trigger creator for the operator.
Link copied to clipboard
open fun run()
Run the scheduler.
Link copied to clipboard
open fun unmute()
Unmute Scheduler telemetry.
Link copied to clipboard
Run a task when a condition is met.
Create a new controller button trigger creator.
Link copied to clipboard
Run a task when a condition is met, debouncing the task from running more than once the condition is met.