Class NotifierCommand

java.lang.Object
edu.wpi.first.wpilibj2.command.CommandBase
edu.wpi.first.wpilibj2.command.NotifierCommand
All Implemented Interfaces:
Sendable, Command

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 use Command.withTimeout(double) or Command.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 Details

  • Constructor Details

    • NotifierCommand

      public NotifierCommand​(Runnable toRun, double period, Subsystem... requirements)
      Creates a new NotifierCommand.
      Parameters:
      toRun - the runnable for the notifier to run
      period - the period at which the notifier should run, in seconds
      requirements - the subsystems required by this command
  • Method Details

    • 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