Class SequentialCommandGroup

    • Constructor Detail

      • SequentialCommandGroup

        public SequentialCommandGroup​(Command... commands)
        Creates a new SequentialCommandGroup. The given commands will be run sequentially, with the CommandGroup finishing when the last command finishes.
        Parameters:
        commands - the commands to include in this group.
    • 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.
      • execute

        public void execute()
        Description copied from interface: Command
        The main body of a command. Called repeatedly while the command is 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
      • isFinished

        public boolean isFinished()
        Description copied from interface: Command
        Whether the command has finished. Once a command finishes, the scheduler will call its end() method and un-schedule it.
        Returns:
        whether the command has finished.
      • runsWhenDisabled

        public boolean runsWhenDisabled()
        Description copied from interface: Command
        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
      • beforeStarting

        public SequentialCommandGroup beforeStarting​(Command before)
        Description copied from interface: Command
        Decorates this command with another command to run before this command starts.

        Note: This decorator works by composing this command within a CommandGroup. The command cannot be used independently after being decorated, or be re-decorated with a different decorator, unless it is manually cleared from the list of grouped commands with CommandGroupBase.clearGroupedCommand(Command). The decorated command can, however, be further decorated without issue.

        Parameters:
        before - the command to run before this one
        Returns:
        the decorated command
      • andThen

        public SequentialCommandGroup andThen​(Command... next)
        Description copied from interface: Command
        Decorates this command with a set of commands to run after it in sequence. Often more convenient/less-verbose than constructing a new SequentialCommandGroup explicitly.

        Note: This decorator works by composing this command within a CommandGroup. The command cannot be used independently after being decorated, or be re-decorated with a different decorator, unless it is manually cleared from the list of grouped commands with CommandGroupBase.clearGroupedCommand(Command). The decorated command can, however, be further decorated without issue.

        Parameters:
        next - the commands to run next
        Returns:
        the decorated command