ConditionalCommand
- class commands2.ConditionalCommand(*args, **kwargs)[source]
Bases:
Command
A command composition that runs one of two commands, depending on the value of the given condition when this command is initialized.
The rules for command compositions apply: command instances that are passed to it cannot be added to any other composition or scheduled individually, and the composition requires all subsystems its components require.
Creates a new ConditionalCommand.
- Parameters:
onTrue – the command to run if the condition is true
onFalse – the command to run if the condition is false
condition – the condition to determine which command to run
- end(interrupted: bool)[source]
The action to take when the command ends. Called when either the command finishes normally, or when it interrupted/canceled.
Do not schedule commands here that share requirements with this command. Use
andThen()
instead.- Parameters:
interrupted – whether the command was interrupted/canceled
- getInterruptionBehavior() InterruptionBehavior [source]
How the command behaves when another command with a shared requirement is scheduled.
- Returns:
a variant of InterruptionBehavior, defaulting to {@link InterruptionBehavior#kCancelSelf kCancelSelf}.
- initSendable(builder: wpiutil._wpiutil.SendableBuilder) None [source]
Initializes this Sendable object.
- Parameters:
builder – sendable builder
- initialize()[source]
The initial subroutine of a command. Called once when the command is initially scheduled.
- isFinished() bool [source]
Whether the command has finished. Once a command finishes, the scheduler will call its
commands2.Command.end()
method and un-schedule it.- Returns:
whether the command has finished.