Package edu.wpi.first.wpilibj2.command
Class NotifierCommand
- java.lang.Object
-
- edu.wpi.first.wpilibj2.command.CommandBase
-
- edu.wpi.first.wpilibj2.command.NotifierCommand
-
public class NotifierCommand extends CommandBase
A command that starts a notifier to run the given runnable periodically in a separate thread. Has no end condition as-is; either subclass it or useCommand.withTimeout(double)
orCommand.withInterrupt(java.util.function.BooleanSupplier)
to give it one.WARNING: Do not use this class unless you are confident in your ability to make the executed code thread-safe. If you do not know what "thread-safe" means, that is a good sign that you should not use this class.
-
-
Field Summary
Fields Modifier and Type Field Description protected Notifier
m_notifier
protected double
m_period
-
Fields inherited from class edu.wpi.first.wpilibj2.command.CommandBase
m_requirements
-
-
Constructor Summary
Constructors Constructor Description NotifierCommand(Runnable toRun, double period, Subsystem... requirements)
Creates a new NotifierCommand.
-
Method Summary
All Methods Instance Methods Concrete Methods 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 Detail
-
m_notifier
protected final Notifier m_notifier
-
m_period
protected final double m_period
-
-
Constructor Detail
-
NotifierCommand
public NotifierCommand(Runnable toRun, double period, Subsystem... requirements)
Creates a new NotifierCommand.- Parameters:
toRun
- the runnable for the notifier to runperiod
- the period at which the notifier should run, in secondsrequirements
- the subsystems required by this command
-
-
Method Detail
-
initialize
public void initialize()
Description copied from interface:Command
The initial subroutine of a command. Called once when the command is initially scheduled.
-
end
public void end(boolean interrupted)
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
-
-