Robot Core Documentation
Loading...
Searching...
No Matches
edu.wpi.first.wpilibj2.command.PerpetualCommand Class Reference
Inheritance diagram for edu.wpi.first.wpilibj2.command.PerpetualCommand:
edu.wpi.first.wpilibj2.command.CommandBase edu.wpi.first.wpilibj2.command.Command edu.wpi.first.util.sendable.Sendable

Public Member Functions

 PerpetualCommand (Command command)
 
void initialize ()
 
void execute ()
 
void end (boolean interrupted)
 
boolean runsWhenDisabled ()
 
- Public Member Functions inherited from edu.wpi.first.wpilibj2.command.CommandBase
 CommandBase ()
 
- Public Member Functions inherited from edu.wpi.first.wpilibj2.command.Command
boolean isFinished ()
 
Set< SubsystemgetRequirements ()
 
final void addRequirements (Subsystem... requirements)
 
String getName ()
 
void setName (String name)
 
String getSubsystem ()
 
void setSubsystem (String subsystem)
 
ParallelRaceGroup withTimeout (double seconds)
 
ParallelRaceGroup until (BooleanSupplier condition)
 
ParallelRaceGroup onlyWhile (BooleanSupplier condition)
 
SequentialCommandGroup beforeStarting (Runnable toRun, Subsystem... requirements)
 
SequentialCommandGroup beforeStarting (Command before)
 
SequentialCommandGroup andThen (Runnable toRun, Subsystem... requirements)
 
SequentialCommandGroup andThen (Command... next)
 
ParallelDeadlineGroup deadlineWith (Command... parallel)
 
ParallelCommandGroup alongWith (Command... parallel)
 
ParallelRaceGroup raceWith (Command... parallel)
 
RepeatCommand repeatedly ()
 
ProxyCommand asProxy ()
 
ConditionalCommand unless (BooleanSupplier condition)
 
ConditionalCommand onlyIf (BooleanSupplier condition)
 
WrapperCommand ignoringDisable (boolean doesRunWhenDisabled)
 
WrapperCommand withInterruptBehavior (InterruptionBehavior interruptBehavior)
 
WrapperCommand finallyDo (BooleanConsumer end)
 
WrapperCommand finallyDo (Runnable end)
 
WrapperCommand handleInterrupt (Runnable handler)
 
void schedule ()
 
void cancel ()
 
boolean isScheduled ()
 
boolean hasRequirement (Subsystem requirement)
 
InterruptionBehavior getInterruptionBehavior ()
 
WrapperCommand withName (String name)
 
void initSendable (SendableBuilder builder)
 
- Public Member Functions inherited from edu.wpi.first.util.sendable.Sendable

Additional Inherited Members

- Protected Member Functions inherited from edu.wpi.first.wpilibj2.command.Command
 Command ()
 
- Protected Attributes inherited from edu.wpi.first.wpilibj2.command.Command
Set< Subsystemm_requirements = new HashSet<>()
 

Detailed Description

A command that runs another command in perpetuity, ignoring that command's end conditions. While this class does not extend CommandGroupBase, it is still considered a composition, as it allows one to compose another command within it; the command instances that are passed to it cannot be added to any other groups, or scheduled individually.

As a rule, CommandGroups require the union of the requirements of their component commands.

This class is provided by the NewCommands VendorDep

Deprecated
PerpetualCommand violates the assumption that execute() doesn't get called after isFinished() returns true – an assumption that should be valid. This was unsafe/undefined behavior from the start, and RepeatCommand provides an easy way to achieve similar end results with slightly different (and safe) semantics.

Constructor & Destructor Documentation

◆ PerpetualCommand()

edu.wpi.first.wpilibj2.command.PerpetualCommand.PerpetualCommand ( Command command)

Creates a new PerpetualCommand. Will run another command in perpetuity, ignoring that command's end conditions, unless this command itself is interrupted.

Parameters
commandthe command to run perpetually

Member Function Documentation

◆ end()

void edu.wpi.first.wpilibj2.command.PerpetualCommand.end ( boolean interrupted)

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(Command...) instead.

Parameters
interruptedwhether the command was interrupted/canceled

Reimplemented from edu.wpi.first.wpilibj2.command.Command.

◆ execute()

void edu.wpi.first.wpilibj2.command.PerpetualCommand.execute ( )

The main body of a command. Called repeatedly while the command is scheduled.

Reimplemented from edu.wpi.first.wpilibj2.command.Command.

◆ initialize()

void edu.wpi.first.wpilibj2.command.PerpetualCommand.initialize ( )

The initial subroutine of a command. Called once when the command is initially scheduled.

Reimplemented from edu.wpi.first.wpilibj2.command.Command.

◆ runsWhenDisabled()

boolean edu.wpi.first.wpilibj2.command.PerpetualCommand.runsWhenDisabled ( )

Whether the given command should run when the robot is disabled. Override to return true if the command should run when disabled.

Returns
whether the command should run when the robot is disabled

Reimplemented from edu.wpi.first.wpilibj2.command.Command.


The documentation for this class was generated from the following file: