SequentialGroup

class SequentialGroup(val commands: Command) : CommandGroup

A CommandGroup that runs its children one at a time.

Constructors

Link copied to clipboard
constructor(vararg commands: Command)

Properties

Link copied to clipboard

The collection of all commands within this group.

Link copied to clipboard
Link copied to clipboard
open val interruptible: Boolean = true

Whether this command can be stopped due to a conflict of Subsystems.

Link copied to clipboard
open override val isDone: Boolean

This returns true once all of its children have finished running.

Link copied to clipboard

A set of all Subsystems this command implements.

Functions

Link copied to clipboard

Returns a SequentialGroup with a Delay and then this command

Link copied to clipboard
fun and(vararg commands: Command): ParallelGroup

Returns a ParallelGroup with this command and an arbitrary number of other commands

Link copied to clipboard

Returns a ParallelDeadlineGroup with this command as the deadline

Link copied to clipboard

Returns a ParallelRaceGroup with this command and a Delay of time

Link copied to clipboard
operator fun invoke()

Allows you to directly "call" a command

Link copied to clipboard

Returns a PerpetualCommand that wraps this command

Link copied to clipboard
fun raceWith(vararg commands: Command): ParallelRaceGroup

Returns a ParallelRaceGroup with this command and an arbitrary number of other commands

Link copied to clipboard
open override fun start()

In a Sequential Group, we will start the first command and wait until it has completed execution before starting the next.

Link copied to clipboard
open fun stop(interrupted: Boolean)

Called once when the command is stopped.

Link copied to clipboard
fun then(vararg commands: Command): SequentialGroup

Returns a SequentialGroup with this command and an arbitrary number of other commands

Link copied to clipboard

Returns a SequentialGroup with this command and then a Delay

Link copied to clipboard
open override fun update()

Now, every update we must check if the currently active command is complete. If it is, remove it and start the next one (if there is one).

Link copied to clipboard

Returns a ParallelDeadlineGroup with this command and the passed command as the deadline