Package edu.wpi.first.wpilibj2.command
Class StartEndCommand
java.lang.Object
edu.wpi.first.wpilibj2.command.CommandBase
edu.wpi.first.wpilibj2.command.StartEndCommand
public class StartEndCommand extends CommandBase
A command that runs a given runnable when it is initialized, and another runnable when it ends.
Useful for running and then stopping a motor, or extending and then retracting a solenoid. Has no
end condition as-is; either subclass it or use
Command.withTimeout(double)
or Command.withInterrupt(java.util.function.BooleanSupplier)
to give it one.-
Field Summary
-
Constructor Summary
Constructors Constructor Description StartEndCommand(Runnable onInit, Runnable onEnd, Subsystem... requirements)
Creates a new StartEndCommand. -
Method Summary
Modifier and Type Method Description void
end(boolean interrupted)
The action to take when the command ends.void
initialize()
The initial subroutine of a command.Methods inherited from class edu.wpi.first.wpilibj2.command.CommandBase
addRequirements, getName, getRequirements, getSubsystem, initSendable, setName, setSubsystem, withName
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface edu.wpi.first.wpilibj2.command.Command
alongWith, andThen, andThen, asProxy, beforeStarting, beforeStarting, cancel, deadlineWith, execute, hasRequirement, isFinished, isScheduled, perpetually, raceWith, runsWhenDisabled, schedule, schedule, withInterrupt, withTimeout
-
Field Details
-
Constructor Details
-
StartEndCommand
Creates a new StartEndCommand. Will run the given runnables when the command starts and when it ends.- Parameters:
onInit
- the Runnable to run on command initonEnd
- the Runnable to run on command endrequirements
- the subsystems required by this command
-
-
Method Details
-
initialize
Description copied from interface:Command
The initial subroutine of a command. Called once when the command is initially scheduled. -
end
Description copied from interface:Command
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
Command.andThen(Command...)
instead.- Parameters:
interrupted
- whether the command was interrupted/canceled
-