Pure Pursuit Task
Task for running Pure Pursuit paths using the BunyipsOpMode Task system. This task is internally used by the PurePursuit.PathMaker to run the path.
Note! Unlike the other drive tasks, this task does not automatically attach itself to a BunyipsSubsystem on construction, and needs to be done manually via the onSubsystem
method, or can be omitted if there are no default tasks for the drive during execution (e.g. only action in Autonomous).
Author
Lucas Bubner, 2024
Since
5.1.0
Constructors
Inherited properties
Timeout value for an infinite task that will run forever.
Whether the task is finished or not via timeout or custom condition. Will be true regardless of the finisher being fired or not, as some tasks will handle this via finishNow().
Functions
Inherited functions
Compose this task into a SequentialTaskGroup with the supplied tasks to run before this one.
Compose this task into a DeadlineTaskGroup with the supplied tasks to run these extra tasks until this task is done.
Force a task to finish immediately, and fire the onFinish() method without waiting for the next polling loop. This method is useful when your task needs to die and needs to finish up immediately. If your finisher has already been fired, this method will do nothing but ensure that the task is marked as finished.
Time in seconds since the task was started.
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.
Return whether this task has elected a dependency on a subsystem or not.
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.
Set the subsystem you want to elect this task to run on, notifying the runner that this task should run there.
Update and query the state of the task if it is finished. This will return true if the task is finished and the finisher has been fired.
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.
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 WaitUntilTask based on this condition.
Compose this task into a ParallelTaskGroup with the supplied tasks to run all of these tasks at once.
Mute task reports from the Scheduler.
Set the timeout of this task dynamically and return the task.