Dynamic Task
Inherited properties
Get the subsystem reference that this task has elected a dependency on. Will return an Optional where if it is not present, this task is not dependent on any subsystem.
Convenience field to get a reference to FtcDashboard's field overlay for drawing on the field. Available as soon as init has been called for this task.
Query (but not update) the finished state of the task. This will return true if the task is finished and the finisher has been fired.
Whether this task should override other tasks in the queue if they conflict with this task. Will only apply if this task has a dependency to run on (see dependency).
Get a reference to the currently running BunyipsOpMode.
Functions
Define code to run once, when the task is started. Override to implement.
Runs once when the task is initialised.
Returning true will end the task.
Return a boolean to this method to add custom criteria if a task should be considered finished.
Finalising function to run once the task is finished. This will always run regardless of whether the task was ended because of an interrupt or the task naturally finishing. Override to add your own callback.
Runs once when the task is finished.
Called when the task is resetting now. Override this method to add custom reset behaviour, such as resetting any internal state variables such as iterators or lists.
Runs when the task is reset to its initial state.
To run as an active loop during this task's duration. Override to implement.
Runs periodically while the task is active.
Inherited functions
Composes a WaitTask to run before this task.
Compose this task into a SequentialTaskGroup with the supplied task to run before this one.
Implicitly run a SequentialTaskGroup with this supplied Runnable, queued to run before this task starts.
Compose this task into a SequentialTaskGroup with the supplied tasks to run before this one.
Compose this task into a DeadlineTaskGroup with the supplied task to run alongside this one until this task is done.
Compose this task into a DeadlineTaskGroup with the supplied tasks to run these extra tasks until this task is done.
Composes a ParallelTaskGroup with a WaitTask to run before this task. This will ensure the task runs for at least the specified time, and no-ops until the duration if it finishes early.
Set the subsystem you want to elect this task to run on, notifying the runner that this task should run there. This task is scheduled with default override behaviour (where this task is not priority).
Set the subsystem you want to elect this task to run on, notifying the runner that this task should run there.
Null check consumer for the opMode field which will no-op the given consumer if an active BunyipsOpMode is not present (i.e. the opMode field is null). This method is the same to the BunyipsOpMode.ifRunning
method, and is supplied here for convenience.
Compose this task into a RaceTaskGroup with the supplied task to run alongside this one until one finishes.
Compose this task into a RaceTaskGroup with the supplied tasks to run all of these tasks until one finishes.
Wrap this task in a RepeatTask where finish conditions are reset immediately.
Null assertion for the opMode field which throws a NullPointerException if an active BunyipsOpMode is not present (i.e. the supplied field is null). This method replicates Objects.requireNonNull
but has a built-in message to alert the user of a non-active OpMode.
Compose this task into a SequentialTaskGroup with the supplied task to follow after this one.
Implicitly run a SequentialTaskGroup with this supplied Runnable, queued to run when this task finishes.
Compose this task into a SequentialTaskGroup with the supplied tasks to follow after this one.
Get a verbose string representation of this task, including all of its properties.
Compose this task into a RaceTaskGroup with a wait condition based on this condition.
Compose this task into a ParallelTaskGroup with the supplied task to run alongside this one.
Compose this task into a ParallelTaskGroup with the supplied tasks to run all of these tasks at once.