public abstract class Trigger extends SendableBase
It is very easy to link a button to a command. For instance, you could link the trigger button of a joystick to a "score" command.
It is encouraged that teams write a subclass of Trigger if they want to have something unusual
(for instance, if they want to react to the user holding a button while the robot is reading a
certain sensor input). For this, they only have to write the get()
method to get
the full functionality of the Trigger class.
Modifier and Type | Class and Description |
---|---|
class |
Trigger.ButtonScheduler
An internal class of
Trigger . |
Constructor and Description |
---|
Trigger() |
Modifier and Type | Method and Description |
---|---|
void |
cancelWhenActive(Command command)
Cancels a command when the trigger becomes active.
|
abstract boolean |
get()
Returns whether or not the trigger is active.
|
void |
initSendable(SendableBuilder builder)
Initializes this
Sendable object. |
void |
toggleWhenActive(Command command)
Toggles a command when the trigger becomes active.
|
void |
whenActive(Command command)
Starts the given command whenever the trigger just becomes active.
|
void |
whenInactive(Command command)
Starts the command when the trigger becomes inactive.
|
void |
whileActive(Command command)
Constantly starts the given command while the button is held.
|
addChild, free, getName, getSubsystem, setName, setName, setName, setSubsystem
public Trigger()
public abstract boolean get()
This method will be called repeatedly a command is linked to the Trigger.
public void whenActive(Command command)
command
- the command to startpublic void whileActive(Command command)
Command.start()
will be called repeatedly while the trigger is active, and will be
canceled when the trigger becomes inactive.command
- the command to startpublic void whenInactive(Command command)
command
- the command to startpublic void toggleWhenActive(Command command)
command
- the command to togglepublic void cancelWhenActive(Command command)
command
- the command to cancelpublic void initSendable(SendableBuilder builder)
Sendable
Sendable
object.builder
- sendable builder