mirror of
https://github.com/wpilibsuite/allwpilib
synced 2026-06-23 01:21:42 +00:00
[commands] Add Commands v3 framework (#6518)
The framework fundamentally relies on the continuation API added in Java 21 (which is currently internal to the JDK). Continuations allow for call stacks to be saved to the heap and resumed later. The async framework allows command bodies to be written in an imperative style. However, an async command will need to be actively cooperative and periodically call coroutine.yield() in loops to yield control back to the command scheduler to let it process other commands. There are also some other additions like priority levels (as opposed to a blanket yes/no for ignoring incoming commands), factories requiring names be provided for commands, and the scheduler tracking all running commands and not just the highest-level groups. However, those changes aren't unique to an async framework, and could just as easily be used in a traditional command framework.
This commit is contained in:
447
commandsv3/src/generated/main/java/org/wpilib/commands3/button/CommandPS4Controller.java
generated
Normal file
447
commandsv3/src/generated/main/java/org/wpilib/commands3/button/CommandPS4Controller.java
generated
Normal file
@@ -0,0 +1,447 @@
|
||||
// Copyright (c) FIRST and other WPILib contributors.
|
||||
// Open Source Software; you can modify and/or share it under the terms of
|
||||
// the WPILib BSD license file in the root directory of this project.
|
||||
|
||||
// THIS FILE WAS AUTO-GENERATED BY ./commandsv3/generate_files.py. DO NOT MODIFY
|
||||
|
||||
package org.wpilib.commands3.button;
|
||||
|
||||
import edu.wpi.first.wpilibj.PS4Controller;
|
||||
import edu.wpi.first.wpilibj.event.EventLoop;
|
||||
import org.wpilib.commands3.Scheduler;
|
||||
import org.wpilib.commands3.Trigger;
|
||||
|
||||
/**
|
||||
* A version of {@link PS4Controller} with {@link Trigger} factories for command-based.
|
||||
*
|
||||
* @see PS4Controller
|
||||
*/
|
||||
@SuppressWarnings("MethodName")
|
||||
public class CommandPS4Controller extends CommandGenericHID {
|
||||
private final PS4Controller m_hid;
|
||||
|
||||
/**
|
||||
* Construct an instance of a controller. Commands bound to buttons on the controller will be
|
||||
* scheduled on the {@link Scheduler#getDefault() default scheduler} using its default event loop.
|
||||
*
|
||||
* @param port The port index on the Driver Station that the controller is plugged into.
|
||||
*/
|
||||
public CommandPS4Controller(int port) {
|
||||
super(port);
|
||||
m_hid = new PS4Controller(port);
|
||||
}
|
||||
|
||||
/**
|
||||
* Construct an instance of a controller. Commands bound to buttons on the controller will be
|
||||
* scheduled on the given scheduler using its default event loop.
|
||||
*
|
||||
* @param scheduler The scheduler that should execute the triggered commands.
|
||||
* @param port The port index on the Driver Station that the controller is plugged into.
|
||||
*/
|
||||
public CommandPS4Controller(Scheduler scheduler, int port) {
|
||||
super(scheduler, port);
|
||||
m_hid = new PS4Controller(port);
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the underlying GenericHID object.
|
||||
*
|
||||
* @return the wrapped GenericHID object
|
||||
*/
|
||||
@Override
|
||||
public PS4Controller getHID() {
|
||||
return m_hid;
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the square button's digital signal.
|
||||
*
|
||||
* @return a Trigger instance representing the square button's digital signal attached
|
||||
* to the {@link Scheduler#getDefaultEventLoop() default scheduler event loop} on the
|
||||
* scheduler passed to the controller's constructor, or the {@link Scheduler#getDefault
|
||||
* default scheduler} if a scheduler was not explicitly provided.
|
||||
* @see #square(EventLoop)
|
||||
*/
|
||||
public Trigger square() {
|
||||
return square(getScheduler().getDefaultEventLoop());
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the square button's digital signal.
|
||||
*
|
||||
* @param loop the event loop instance to attach the event to.
|
||||
* @return a Trigger instance representing the square button's digital signal attached
|
||||
* to the given loop.
|
||||
*/
|
||||
public Trigger square(EventLoop loop) {
|
||||
return button(PS4Controller.Button.kSquare.value, loop);
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the cross button's digital signal.
|
||||
*
|
||||
* @return a Trigger instance representing the cross button's digital signal attached
|
||||
* to the {@link Scheduler#getDefaultEventLoop() default scheduler event loop} on the
|
||||
* scheduler passed to the controller's constructor, or the {@link Scheduler#getDefault
|
||||
* default scheduler} if a scheduler was not explicitly provided.
|
||||
* @see #cross(EventLoop)
|
||||
*/
|
||||
public Trigger cross() {
|
||||
return cross(getScheduler().getDefaultEventLoop());
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the cross button's digital signal.
|
||||
*
|
||||
* @param loop the event loop instance to attach the event to.
|
||||
* @return a Trigger instance representing the cross button's digital signal attached
|
||||
* to the given loop.
|
||||
*/
|
||||
public Trigger cross(EventLoop loop) {
|
||||
return button(PS4Controller.Button.kCross.value, loop);
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the circle button's digital signal.
|
||||
*
|
||||
* @return a Trigger instance representing the circle button's digital signal attached
|
||||
* to the {@link Scheduler#getDefaultEventLoop() default scheduler event loop} on the
|
||||
* scheduler passed to the controller's constructor, or the {@link Scheduler#getDefault
|
||||
* default scheduler} if a scheduler was not explicitly provided.
|
||||
* @see #circle(EventLoop)
|
||||
*/
|
||||
public Trigger circle() {
|
||||
return circle(getScheduler().getDefaultEventLoop());
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the circle button's digital signal.
|
||||
*
|
||||
* @param loop the event loop instance to attach the event to.
|
||||
* @return a Trigger instance representing the circle button's digital signal attached
|
||||
* to the given loop.
|
||||
*/
|
||||
public Trigger circle(EventLoop loop) {
|
||||
return button(PS4Controller.Button.kCircle.value, loop);
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the triangle button's digital signal.
|
||||
*
|
||||
* @return a Trigger instance representing the triangle button's digital signal attached
|
||||
* to the {@link Scheduler#getDefaultEventLoop() default scheduler event loop} on the
|
||||
* scheduler passed to the controller's constructor, or the {@link Scheduler#getDefault
|
||||
* default scheduler} if a scheduler was not explicitly provided.
|
||||
* @see #triangle(EventLoop)
|
||||
*/
|
||||
public Trigger triangle() {
|
||||
return triangle(getScheduler().getDefaultEventLoop());
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the triangle button's digital signal.
|
||||
*
|
||||
* @param loop the event loop instance to attach the event to.
|
||||
* @return a Trigger instance representing the triangle button's digital signal attached
|
||||
* to the given loop.
|
||||
*/
|
||||
public Trigger triangle(EventLoop loop) {
|
||||
return button(PS4Controller.Button.kTriangle.value, loop);
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the left trigger 1 button's digital signal.
|
||||
*
|
||||
* @return a Trigger instance representing the left trigger 1 button's digital signal attached
|
||||
* to the {@link Scheduler#getDefaultEventLoop() default scheduler event loop} on the
|
||||
* scheduler passed to the controller's constructor, or the {@link Scheduler#getDefault
|
||||
* default scheduler} if a scheduler was not explicitly provided.
|
||||
* @see #L1(EventLoop)
|
||||
*/
|
||||
public Trigger L1() {
|
||||
return L1(getScheduler().getDefaultEventLoop());
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the left trigger 1 button's digital signal.
|
||||
*
|
||||
* @param loop the event loop instance to attach the event to.
|
||||
* @return a Trigger instance representing the left trigger 1 button's digital signal attached
|
||||
* to the given loop.
|
||||
*/
|
||||
public Trigger L1(EventLoop loop) {
|
||||
return button(PS4Controller.Button.kL1.value, loop);
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the right trigger 1 button's digital signal.
|
||||
*
|
||||
* @return a Trigger instance representing the right trigger 1 button's digital signal attached
|
||||
* to the {@link Scheduler#getDefaultEventLoop() default scheduler event loop} on the
|
||||
* scheduler passed to the controller's constructor, or the {@link Scheduler#getDefault
|
||||
* default scheduler} if a scheduler was not explicitly provided.
|
||||
* @see #R1(EventLoop)
|
||||
*/
|
||||
public Trigger R1() {
|
||||
return R1(getScheduler().getDefaultEventLoop());
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the right trigger 1 button's digital signal.
|
||||
*
|
||||
* @param loop the event loop instance to attach the event to.
|
||||
* @return a Trigger instance representing the right trigger 1 button's digital signal attached
|
||||
* to the given loop.
|
||||
*/
|
||||
public Trigger R1(EventLoop loop) {
|
||||
return button(PS4Controller.Button.kR1.value, loop);
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the left trigger 2 button's digital signal.
|
||||
*
|
||||
* @return a Trigger instance representing the left trigger 2 button's digital signal attached
|
||||
* to the {@link Scheduler#getDefaultEventLoop() default scheduler event loop} on the
|
||||
* scheduler passed to the controller's constructor, or the {@link Scheduler#getDefault
|
||||
* default scheduler} if a scheduler was not explicitly provided.
|
||||
* @see #L2(EventLoop)
|
||||
*/
|
||||
public Trigger L2() {
|
||||
return L2(getScheduler().getDefaultEventLoop());
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the left trigger 2 button's digital signal.
|
||||
*
|
||||
* @param loop the event loop instance to attach the event to.
|
||||
* @return a Trigger instance representing the left trigger 2 button's digital signal attached
|
||||
* to the given loop.
|
||||
*/
|
||||
public Trigger L2(EventLoop loop) {
|
||||
return button(PS4Controller.Button.kL2.value, loop);
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the right trigger 2 button's digital signal.
|
||||
*
|
||||
* @return a Trigger instance representing the right trigger 2 button's digital signal attached
|
||||
* to the {@link Scheduler#getDefaultEventLoop() default scheduler event loop} on the
|
||||
* scheduler passed to the controller's constructor, or the {@link Scheduler#getDefault
|
||||
* default scheduler} if a scheduler was not explicitly provided.
|
||||
* @see #R2(EventLoop)
|
||||
*/
|
||||
public Trigger R2() {
|
||||
return R2(getScheduler().getDefaultEventLoop());
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the right trigger 2 button's digital signal.
|
||||
*
|
||||
* @param loop the event loop instance to attach the event to.
|
||||
* @return a Trigger instance representing the right trigger 2 button's digital signal attached
|
||||
* to the given loop.
|
||||
*/
|
||||
public Trigger R2(EventLoop loop) {
|
||||
return button(PS4Controller.Button.kR2.value, loop);
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the share button's digital signal.
|
||||
*
|
||||
* @return a Trigger instance representing the share button's digital signal attached
|
||||
* to the {@link Scheduler#getDefaultEventLoop() default scheduler event loop} on the
|
||||
* scheduler passed to the controller's constructor, or the {@link Scheduler#getDefault
|
||||
* default scheduler} if a scheduler was not explicitly provided.
|
||||
* @see #share(EventLoop)
|
||||
*/
|
||||
public Trigger share() {
|
||||
return share(getScheduler().getDefaultEventLoop());
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the share button's digital signal.
|
||||
*
|
||||
* @param loop the event loop instance to attach the event to.
|
||||
* @return a Trigger instance representing the share button's digital signal attached
|
||||
* to the given loop.
|
||||
*/
|
||||
public Trigger share(EventLoop loop) {
|
||||
return button(PS4Controller.Button.kShare.value, loop);
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the options button's digital signal.
|
||||
*
|
||||
* @return a Trigger instance representing the options button's digital signal attached
|
||||
* to the {@link Scheduler#getDefaultEventLoop() default scheduler event loop} on the
|
||||
* scheduler passed to the controller's constructor, or the {@link Scheduler#getDefault
|
||||
* default scheduler} if a scheduler was not explicitly provided.
|
||||
* @see #options(EventLoop)
|
||||
*/
|
||||
public Trigger options() {
|
||||
return options(getScheduler().getDefaultEventLoop());
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the options button's digital signal.
|
||||
*
|
||||
* @param loop the event loop instance to attach the event to.
|
||||
* @return a Trigger instance representing the options button's digital signal attached
|
||||
* to the given loop.
|
||||
*/
|
||||
public Trigger options(EventLoop loop) {
|
||||
return button(PS4Controller.Button.kOptions.value, loop);
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the L3 (left stick) button's digital signal.
|
||||
*
|
||||
* @return a Trigger instance representing the L3 (left stick) button's digital signal attached
|
||||
* to the {@link Scheduler#getDefaultEventLoop() default scheduler event loop} on the
|
||||
* scheduler passed to the controller's constructor, or the {@link Scheduler#getDefault
|
||||
* default scheduler} if a scheduler was not explicitly provided.
|
||||
* @see #L3(EventLoop)
|
||||
*/
|
||||
public Trigger L3() {
|
||||
return L3(getScheduler().getDefaultEventLoop());
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the L3 (left stick) button's digital signal.
|
||||
*
|
||||
* @param loop the event loop instance to attach the event to.
|
||||
* @return a Trigger instance representing the L3 (left stick) button's digital signal attached
|
||||
* to the given loop.
|
||||
*/
|
||||
public Trigger L3(EventLoop loop) {
|
||||
return button(PS4Controller.Button.kL3.value, loop);
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the R3 (right stick) button's digital signal.
|
||||
*
|
||||
* @return a Trigger instance representing the R3 (right stick) button's digital signal attached
|
||||
* to the {@link Scheduler#getDefaultEventLoop() default scheduler event loop} on the
|
||||
* scheduler passed to the controller's constructor, or the {@link Scheduler#getDefault
|
||||
* default scheduler} if a scheduler was not explicitly provided.
|
||||
* @see #R3(EventLoop)
|
||||
*/
|
||||
public Trigger R3() {
|
||||
return R3(getScheduler().getDefaultEventLoop());
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the R3 (right stick) button's digital signal.
|
||||
*
|
||||
* @param loop the event loop instance to attach the event to.
|
||||
* @return a Trigger instance representing the R3 (right stick) button's digital signal attached
|
||||
* to the given loop.
|
||||
*/
|
||||
public Trigger R3(EventLoop loop) {
|
||||
return button(PS4Controller.Button.kR3.value, loop);
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the PlayStation button's digital signal.
|
||||
*
|
||||
* @return a Trigger instance representing the PlayStation button's digital signal attached
|
||||
* to the {@link Scheduler#getDefaultEventLoop() default scheduler event loop} on the
|
||||
* scheduler passed to the controller's constructor, or the {@link Scheduler#getDefault
|
||||
* default scheduler} if a scheduler was not explicitly provided.
|
||||
* @see #PS(EventLoop)
|
||||
*/
|
||||
public Trigger PS() {
|
||||
return PS(getScheduler().getDefaultEventLoop());
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the PlayStation button's digital signal.
|
||||
*
|
||||
* @param loop the event loop instance to attach the event to.
|
||||
* @return a Trigger instance representing the PlayStation button's digital signal attached
|
||||
* to the given loop.
|
||||
*/
|
||||
public Trigger PS(EventLoop loop) {
|
||||
return button(PS4Controller.Button.kPS.value, loop);
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the touchpad button's digital signal.
|
||||
*
|
||||
* @return a Trigger instance representing the touchpad button's digital signal attached
|
||||
* to the {@link Scheduler#getDefaultEventLoop() default scheduler event loop} on the
|
||||
* scheduler passed to the controller's constructor, or the {@link Scheduler#getDefault
|
||||
* default scheduler} if a scheduler was not explicitly provided.
|
||||
* @see #touchpad(EventLoop)
|
||||
*/
|
||||
public Trigger touchpad() {
|
||||
return touchpad(getScheduler().getDefaultEventLoop());
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the touchpad button's digital signal.
|
||||
*
|
||||
* @param loop the event loop instance to attach the event to.
|
||||
* @return a Trigger instance representing the touchpad button's digital signal attached
|
||||
* to the given loop.
|
||||
*/
|
||||
public Trigger touchpad(EventLoop loop) {
|
||||
return button(PS4Controller.Button.kTouchpad.value, loop);
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the X axis value of left side of the controller. Right is positive.
|
||||
*
|
||||
* @return The axis value.
|
||||
*/
|
||||
public double getLeftX() {
|
||||
return m_hid.getLeftX();
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the Y axis value of left side of the controller. Back is positive.
|
||||
*
|
||||
* @return The axis value.
|
||||
*/
|
||||
public double getLeftY() {
|
||||
return m_hid.getLeftY();
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the X axis value of right side of the controller. Right is positive.
|
||||
*
|
||||
* @return The axis value.
|
||||
*/
|
||||
public double getRightX() {
|
||||
return m_hid.getRightX();
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the Y axis value of right side of the controller. Back is positive.
|
||||
*
|
||||
* @return The axis value.
|
||||
*/
|
||||
public double getRightY() {
|
||||
return m_hid.getRightY();
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the left trigger 2 axis value of the controller. Note that this axis is bound to the
|
||||
* range of [0, 1] as opposed to the usual [-1, 1].
|
||||
*
|
||||
* @return The axis value.
|
||||
*/
|
||||
public double getL2Axis() {
|
||||
return m_hid.getL2Axis();
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the right trigger 2 axis value of the controller. Note that this axis is bound to the
|
||||
* range of [0, 1] as opposed to the usual [-1, 1].
|
||||
*
|
||||
* @return The axis value.
|
||||
*/
|
||||
public double getR2Axis() {
|
||||
return m_hid.getR2Axis();
|
||||
}
|
||||
}
|
||||
447
commandsv3/src/generated/main/java/org/wpilib/commands3/button/CommandPS5Controller.java
generated
Normal file
447
commandsv3/src/generated/main/java/org/wpilib/commands3/button/CommandPS5Controller.java
generated
Normal file
@@ -0,0 +1,447 @@
|
||||
// Copyright (c) FIRST and other WPILib contributors.
|
||||
// Open Source Software; you can modify and/or share it under the terms of
|
||||
// the WPILib BSD license file in the root directory of this project.
|
||||
|
||||
// THIS FILE WAS AUTO-GENERATED BY ./commandsv3/generate_files.py. DO NOT MODIFY
|
||||
|
||||
package org.wpilib.commands3.button;
|
||||
|
||||
import edu.wpi.first.wpilibj.PS5Controller;
|
||||
import edu.wpi.first.wpilibj.event.EventLoop;
|
||||
import org.wpilib.commands3.Scheduler;
|
||||
import org.wpilib.commands3.Trigger;
|
||||
|
||||
/**
|
||||
* A version of {@link PS5Controller} with {@link Trigger} factories for command-based.
|
||||
*
|
||||
* @see PS5Controller
|
||||
*/
|
||||
@SuppressWarnings("MethodName")
|
||||
public class CommandPS5Controller extends CommandGenericHID {
|
||||
private final PS5Controller m_hid;
|
||||
|
||||
/**
|
||||
* Construct an instance of a controller. Commands bound to buttons on the controller will be
|
||||
* scheduled on the {@link Scheduler#getDefault() default scheduler} using its default event loop.
|
||||
*
|
||||
* @param port The port index on the Driver Station that the controller is plugged into.
|
||||
*/
|
||||
public CommandPS5Controller(int port) {
|
||||
super(port);
|
||||
m_hid = new PS5Controller(port);
|
||||
}
|
||||
|
||||
/**
|
||||
* Construct an instance of a controller. Commands bound to buttons on the controller will be
|
||||
* scheduled on the given scheduler using its default event loop.
|
||||
*
|
||||
* @param scheduler The scheduler that should execute the triggered commands.
|
||||
* @param port The port index on the Driver Station that the controller is plugged into.
|
||||
*/
|
||||
public CommandPS5Controller(Scheduler scheduler, int port) {
|
||||
super(scheduler, port);
|
||||
m_hid = new PS5Controller(port);
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the underlying GenericHID object.
|
||||
*
|
||||
* @return the wrapped GenericHID object
|
||||
*/
|
||||
@Override
|
||||
public PS5Controller getHID() {
|
||||
return m_hid;
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the square button's digital signal.
|
||||
*
|
||||
* @return a Trigger instance representing the square button's digital signal attached
|
||||
* to the {@link Scheduler#getDefaultEventLoop() default scheduler event loop} on the
|
||||
* scheduler passed to the controller's constructor, or the {@link Scheduler#getDefault
|
||||
* default scheduler} if a scheduler was not explicitly provided.
|
||||
* @see #square(EventLoop)
|
||||
*/
|
||||
public Trigger square() {
|
||||
return square(getScheduler().getDefaultEventLoop());
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the square button's digital signal.
|
||||
*
|
||||
* @param loop the event loop instance to attach the event to.
|
||||
* @return a Trigger instance representing the square button's digital signal attached
|
||||
* to the given loop.
|
||||
*/
|
||||
public Trigger square(EventLoop loop) {
|
||||
return button(PS5Controller.Button.kSquare.value, loop);
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the cross button's digital signal.
|
||||
*
|
||||
* @return a Trigger instance representing the cross button's digital signal attached
|
||||
* to the {@link Scheduler#getDefaultEventLoop() default scheduler event loop} on the
|
||||
* scheduler passed to the controller's constructor, or the {@link Scheduler#getDefault
|
||||
* default scheduler} if a scheduler was not explicitly provided.
|
||||
* @see #cross(EventLoop)
|
||||
*/
|
||||
public Trigger cross() {
|
||||
return cross(getScheduler().getDefaultEventLoop());
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the cross button's digital signal.
|
||||
*
|
||||
* @param loop the event loop instance to attach the event to.
|
||||
* @return a Trigger instance representing the cross button's digital signal attached
|
||||
* to the given loop.
|
||||
*/
|
||||
public Trigger cross(EventLoop loop) {
|
||||
return button(PS5Controller.Button.kCross.value, loop);
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the circle button's digital signal.
|
||||
*
|
||||
* @return a Trigger instance representing the circle button's digital signal attached
|
||||
* to the {@link Scheduler#getDefaultEventLoop() default scheduler event loop} on the
|
||||
* scheduler passed to the controller's constructor, or the {@link Scheduler#getDefault
|
||||
* default scheduler} if a scheduler was not explicitly provided.
|
||||
* @see #circle(EventLoop)
|
||||
*/
|
||||
public Trigger circle() {
|
||||
return circle(getScheduler().getDefaultEventLoop());
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the circle button's digital signal.
|
||||
*
|
||||
* @param loop the event loop instance to attach the event to.
|
||||
* @return a Trigger instance representing the circle button's digital signal attached
|
||||
* to the given loop.
|
||||
*/
|
||||
public Trigger circle(EventLoop loop) {
|
||||
return button(PS5Controller.Button.kCircle.value, loop);
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the triangle button's digital signal.
|
||||
*
|
||||
* @return a Trigger instance representing the triangle button's digital signal attached
|
||||
* to the {@link Scheduler#getDefaultEventLoop() default scheduler event loop} on the
|
||||
* scheduler passed to the controller's constructor, or the {@link Scheduler#getDefault
|
||||
* default scheduler} if a scheduler was not explicitly provided.
|
||||
* @see #triangle(EventLoop)
|
||||
*/
|
||||
public Trigger triangle() {
|
||||
return triangle(getScheduler().getDefaultEventLoop());
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the triangle button's digital signal.
|
||||
*
|
||||
* @param loop the event loop instance to attach the event to.
|
||||
* @return a Trigger instance representing the triangle button's digital signal attached
|
||||
* to the given loop.
|
||||
*/
|
||||
public Trigger triangle(EventLoop loop) {
|
||||
return button(PS5Controller.Button.kTriangle.value, loop);
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the left trigger 1 button's digital signal.
|
||||
*
|
||||
* @return a Trigger instance representing the left trigger 1 button's digital signal attached
|
||||
* to the {@link Scheduler#getDefaultEventLoop() default scheduler event loop} on the
|
||||
* scheduler passed to the controller's constructor, or the {@link Scheduler#getDefault
|
||||
* default scheduler} if a scheduler was not explicitly provided.
|
||||
* @see #L1(EventLoop)
|
||||
*/
|
||||
public Trigger L1() {
|
||||
return L1(getScheduler().getDefaultEventLoop());
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the left trigger 1 button's digital signal.
|
||||
*
|
||||
* @param loop the event loop instance to attach the event to.
|
||||
* @return a Trigger instance representing the left trigger 1 button's digital signal attached
|
||||
* to the given loop.
|
||||
*/
|
||||
public Trigger L1(EventLoop loop) {
|
||||
return button(PS5Controller.Button.kL1.value, loop);
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the right trigger 1 button's digital signal.
|
||||
*
|
||||
* @return a Trigger instance representing the right trigger 1 button's digital signal attached
|
||||
* to the {@link Scheduler#getDefaultEventLoop() default scheduler event loop} on the
|
||||
* scheduler passed to the controller's constructor, or the {@link Scheduler#getDefault
|
||||
* default scheduler} if a scheduler was not explicitly provided.
|
||||
* @see #R1(EventLoop)
|
||||
*/
|
||||
public Trigger R1() {
|
||||
return R1(getScheduler().getDefaultEventLoop());
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the right trigger 1 button's digital signal.
|
||||
*
|
||||
* @param loop the event loop instance to attach the event to.
|
||||
* @return a Trigger instance representing the right trigger 1 button's digital signal attached
|
||||
* to the given loop.
|
||||
*/
|
||||
public Trigger R1(EventLoop loop) {
|
||||
return button(PS5Controller.Button.kR1.value, loop);
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the left trigger 2 button's digital signal.
|
||||
*
|
||||
* @return a Trigger instance representing the left trigger 2 button's digital signal attached
|
||||
* to the {@link Scheduler#getDefaultEventLoop() default scheduler event loop} on the
|
||||
* scheduler passed to the controller's constructor, or the {@link Scheduler#getDefault
|
||||
* default scheduler} if a scheduler was not explicitly provided.
|
||||
* @see #L2(EventLoop)
|
||||
*/
|
||||
public Trigger L2() {
|
||||
return L2(getScheduler().getDefaultEventLoop());
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the left trigger 2 button's digital signal.
|
||||
*
|
||||
* @param loop the event loop instance to attach the event to.
|
||||
* @return a Trigger instance representing the left trigger 2 button's digital signal attached
|
||||
* to the given loop.
|
||||
*/
|
||||
public Trigger L2(EventLoop loop) {
|
||||
return button(PS5Controller.Button.kL2.value, loop);
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the right trigger 2 button's digital signal.
|
||||
*
|
||||
* @return a Trigger instance representing the right trigger 2 button's digital signal attached
|
||||
* to the {@link Scheduler#getDefaultEventLoop() default scheduler event loop} on the
|
||||
* scheduler passed to the controller's constructor, or the {@link Scheduler#getDefault
|
||||
* default scheduler} if a scheduler was not explicitly provided.
|
||||
* @see #R2(EventLoop)
|
||||
*/
|
||||
public Trigger R2() {
|
||||
return R2(getScheduler().getDefaultEventLoop());
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the right trigger 2 button's digital signal.
|
||||
*
|
||||
* @param loop the event loop instance to attach the event to.
|
||||
* @return a Trigger instance representing the right trigger 2 button's digital signal attached
|
||||
* to the given loop.
|
||||
*/
|
||||
public Trigger R2(EventLoop loop) {
|
||||
return button(PS5Controller.Button.kR2.value, loop);
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the create button's digital signal.
|
||||
*
|
||||
* @return a Trigger instance representing the create button's digital signal attached
|
||||
* to the {@link Scheduler#getDefaultEventLoop() default scheduler event loop} on the
|
||||
* scheduler passed to the controller's constructor, or the {@link Scheduler#getDefault
|
||||
* default scheduler} if a scheduler was not explicitly provided.
|
||||
* @see #create(EventLoop)
|
||||
*/
|
||||
public Trigger create() {
|
||||
return create(getScheduler().getDefaultEventLoop());
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the create button's digital signal.
|
||||
*
|
||||
* @param loop the event loop instance to attach the event to.
|
||||
* @return a Trigger instance representing the create button's digital signal attached
|
||||
* to the given loop.
|
||||
*/
|
||||
public Trigger create(EventLoop loop) {
|
||||
return button(PS5Controller.Button.kCreate.value, loop);
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the options button's digital signal.
|
||||
*
|
||||
* @return a Trigger instance representing the options button's digital signal attached
|
||||
* to the {@link Scheduler#getDefaultEventLoop() default scheduler event loop} on the
|
||||
* scheduler passed to the controller's constructor, or the {@link Scheduler#getDefault
|
||||
* default scheduler} if a scheduler was not explicitly provided.
|
||||
* @see #options(EventLoop)
|
||||
*/
|
||||
public Trigger options() {
|
||||
return options(getScheduler().getDefaultEventLoop());
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the options button's digital signal.
|
||||
*
|
||||
* @param loop the event loop instance to attach the event to.
|
||||
* @return a Trigger instance representing the options button's digital signal attached
|
||||
* to the given loop.
|
||||
*/
|
||||
public Trigger options(EventLoop loop) {
|
||||
return button(PS5Controller.Button.kOptions.value, loop);
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the L3 (left stick) button's digital signal.
|
||||
*
|
||||
* @return a Trigger instance representing the L3 (left stick) button's digital signal attached
|
||||
* to the {@link Scheduler#getDefaultEventLoop() default scheduler event loop} on the
|
||||
* scheduler passed to the controller's constructor, or the {@link Scheduler#getDefault
|
||||
* default scheduler} if a scheduler was not explicitly provided.
|
||||
* @see #L3(EventLoop)
|
||||
*/
|
||||
public Trigger L3() {
|
||||
return L3(getScheduler().getDefaultEventLoop());
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the L3 (left stick) button's digital signal.
|
||||
*
|
||||
* @param loop the event loop instance to attach the event to.
|
||||
* @return a Trigger instance representing the L3 (left stick) button's digital signal attached
|
||||
* to the given loop.
|
||||
*/
|
||||
public Trigger L3(EventLoop loop) {
|
||||
return button(PS5Controller.Button.kL3.value, loop);
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the R3 (right stick) button's digital signal.
|
||||
*
|
||||
* @return a Trigger instance representing the R3 (right stick) button's digital signal attached
|
||||
* to the {@link Scheduler#getDefaultEventLoop() default scheduler event loop} on the
|
||||
* scheduler passed to the controller's constructor, or the {@link Scheduler#getDefault
|
||||
* default scheduler} if a scheduler was not explicitly provided.
|
||||
* @see #R3(EventLoop)
|
||||
*/
|
||||
public Trigger R3() {
|
||||
return R3(getScheduler().getDefaultEventLoop());
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the R3 (right stick) button's digital signal.
|
||||
*
|
||||
* @param loop the event loop instance to attach the event to.
|
||||
* @return a Trigger instance representing the R3 (right stick) button's digital signal attached
|
||||
* to the given loop.
|
||||
*/
|
||||
public Trigger R3(EventLoop loop) {
|
||||
return button(PS5Controller.Button.kR3.value, loop);
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the PlayStation button's digital signal.
|
||||
*
|
||||
* @return a Trigger instance representing the PlayStation button's digital signal attached
|
||||
* to the {@link Scheduler#getDefaultEventLoop() default scheduler event loop} on the
|
||||
* scheduler passed to the controller's constructor, or the {@link Scheduler#getDefault
|
||||
* default scheduler} if a scheduler was not explicitly provided.
|
||||
* @see #PS(EventLoop)
|
||||
*/
|
||||
public Trigger PS() {
|
||||
return PS(getScheduler().getDefaultEventLoop());
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the PlayStation button's digital signal.
|
||||
*
|
||||
* @param loop the event loop instance to attach the event to.
|
||||
* @return a Trigger instance representing the PlayStation button's digital signal attached
|
||||
* to the given loop.
|
||||
*/
|
||||
public Trigger PS(EventLoop loop) {
|
||||
return button(PS5Controller.Button.kPS.value, loop);
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the touchpad button's digital signal.
|
||||
*
|
||||
* @return a Trigger instance representing the touchpad button's digital signal attached
|
||||
* to the {@link Scheduler#getDefaultEventLoop() default scheduler event loop} on the
|
||||
* scheduler passed to the controller's constructor, or the {@link Scheduler#getDefault
|
||||
* default scheduler} if a scheduler was not explicitly provided.
|
||||
* @see #touchpad(EventLoop)
|
||||
*/
|
||||
public Trigger touchpad() {
|
||||
return touchpad(getScheduler().getDefaultEventLoop());
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the touchpad button's digital signal.
|
||||
*
|
||||
* @param loop the event loop instance to attach the event to.
|
||||
* @return a Trigger instance representing the touchpad button's digital signal attached
|
||||
* to the given loop.
|
||||
*/
|
||||
public Trigger touchpad(EventLoop loop) {
|
||||
return button(PS5Controller.Button.kTouchpad.value, loop);
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the X axis value of left side of the controller. Right is positive.
|
||||
*
|
||||
* @return The axis value.
|
||||
*/
|
||||
public double getLeftX() {
|
||||
return m_hid.getLeftX();
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the Y axis value of left side of the controller. Back is positive.
|
||||
*
|
||||
* @return The axis value.
|
||||
*/
|
||||
public double getLeftY() {
|
||||
return m_hid.getLeftY();
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the X axis value of right side of the controller. Right is positive.
|
||||
*
|
||||
* @return The axis value.
|
||||
*/
|
||||
public double getRightX() {
|
||||
return m_hid.getRightX();
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the Y axis value of right side of the controller. Back is positive.
|
||||
*
|
||||
* @return The axis value.
|
||||
*/
|
||||
public double getRightY() {
|
||||
return m_hid.getRightY();
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the left trigger 2 axis value of the controller. Note that this axis is bound to the
|
||||
* range of [0, 1] as opposed to the usual [-1, 1].
|
||||
*
|
||||
* @return The axis value.
|
||||
*/
|
||||
public double getL2Axis() {
|
||||
return m_hid.getL2Axis();
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the right trigger 2 axis value of the controller. Note that this axis is bound to the
|
||||
* range of [0, 1] as opposed to the usual [-1, 1].
|
||||
*
|
||||
* @return The axis value.
|
||||
*/
|
||||
public double getR2Axis() {
|
||||
return m_hid.getR2Axis();
|
||||
}
|
||||
}
|
||||
451
commandsv3/src/generated/main/java/org/wpilib/commands3/button/CommandStadiaController.java
generated
Normal file
451
commandsv3/src/generated/main/java/org/wpilib/commands3/button/CommandStadiaController.java
generated
Normal file
@@ -0,0 +1,451 @@
|
||||
// Copyright (c) FIRST and other WPILib contributors.
|
||||
// Open Source Software; you can modify and/or share it under the terms of
|
||||
// the WPILib BSD license file in the root directory of this project.
|
||||
|
||||
// THIS FILE WAS AUTO-GENERATED BY ./commandsv3/generate_files.py. DO NOT MODIFY
|
||||
|
||||
package org.wpilib.commands3.button;
|
||||
|
||||
import edu.wpi.first.wpilibj.StadiaController;
|
||||
import edu.wpi.first.wpilibj.event.EventLoop;
|
||||
import org.wpilib.commands3.Scheduler;
|
||||
import org.wpilib.commands3.Trigger;
|
||||
|
||||
/**
|
||||
* A version of {@link StadiaController} with {@link Trigger} factories for command-based.
|
||||
*
|
||||
* @see StadiaController
|
||||
*/
|
||||
@SuppressWarnings("MethodName")
|
||||
public class CommandStadiaController extends CommandGenericHID {
|
||||
private final StadiaController m_hid;
|
||||
|
||||
/**
|
||||
* Construct an instance of a controller. Commands bound to buttons on the controller will be
|
||||
* scheduled on the {@link Scheduler#getDefault() default scheduler} using its default event loop.
|
||||
*
|
||||
* @param port The port index on the Driver Station that the controller is plugged into.
|
||||
*/
|
||||
public CommandStadiaController(int port) {
|
||||
super(port);
|
||||
m_hid = new StadiaController(port);
|
||||
}
|
||||
|
||||
/**
|
||||
* Construct an instance of a controller. Commands bound to buttons on the controller will be
|
||||
* scheduled on the given scheduler using its default event loop.
|
||||
*
|
||||
* @param scheduler The scheduler that should execute the triggered commands.
|
||||
* @param port The port index on the Driver Station that the controller is plugged into.
|
||||
*/
|
||||
public CommandStadiaController(Scheduler scheduler, int port) {
|
||||
super(scheduler, port);
|
||||
m_hid = new StadiaController(port);
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the underlying GenericHID object.
|
||||
*
|
||||
* @return the wrapped GenericHID object
|
||||
*/
|
||||
@Override
|
||||
public StadiaController getHID() {
|
||||
return m_hid;
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the A button's digital signal.
|
||||
*
|
||||
* @return a Trigger instance representing the A button's digital signal attached
|
||||
* to the {@link Scheduler#getDefaultEventLoop() default scheduler event loop} on the
|
||||
* scheduler passed to the controller's constructor, or the {@link Scheduler#getDefault
|
||||
* default scheduler} if a scheduler was not explicitly provided.
|
||||
* @see #a(EventLoop)
|
||||
*/
|
||||
public Trigger a() {
|
||||
return a(getScheduler().getDefaultEventLoop());
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the A button's digital signal.
|
||||
*
|
||||
* @param loop the event loop instance to attach the event to.
|
||||
* @return a Trigger instance representing the A button's digital signal attached
|
||||
* to the given loop.
|
||||
*/
|
||||
public Trigger a(EventLoop loop) {
|
||||
return button(StadiaController.Button.kA.value, loop);
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the B button's digital signal.
|
||||
*
|
||||
* @return a Trigger instance representing the B button's digital signal attached
|
||||
* to the {@link Scheduler#getDefaultEventLoop() default scheduler event loop} on the
|
||||
* scheduler passed to the controller's constructor, or the {@link Scheduler#getDefault
|
||||
* default scheduler} if a scheduler was not explicitly provided.
|
||||
* @see #b(EventLoop)
|
||||
*/
|
||||
public Trigger b() {
|
||||
return b(getScheduler().getDefaultEventLoop());
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the B button's digital signal.
|
||||
*
|
||||
* @param loop the event loop instance to attach the event to.
|
||||
* @return a Trigger instance representing the B button's digital signal attached
|
||||
* to the given loop.
|
||||
*/
|
||||
public Trigger b(EventLoop loop) {
|
||||
return button(StadiaController.Button.kB.value, loop);
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the X button's digital signal.
|
||||
*
|
||||
* @return a Trigger instance representing the X button's digital signal attached
|
||||
* to the {@link Scheduler#getDefaultEventLoop() default scheduler event loop} on the
|
||||
* scheduler passed to the controller's constructor, or the {@link Scheduler#getDefault
|
||||
* default scheduler} if a scheduler was not explicitly provided.
|
||||
* @see #x(EventLoop)
|
||||
*/
|
||||
public Trigger x() {
|
||||
return x(getScheduler().getDefaultEventLoop());
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the X button's digital signal.
|
||||
*
|
||||
* @param loop the event loop instance to attach the event to.
|
||||
* @return a Trigger instance representing the X button's digital signal attached
|
||||
* to the given loop.
|
||||
*/
|
||||
public Trigger x(EventLoop loop) {
|
||||
return button(StadiaController.Button.kX.value, loop);
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the Y button's digital signal.
|
||||
*
|
||||
* @return a Trigger instance representing the Y button's digital signal attached
|
||||
* to the {@link Scheduler#getDefaultEventLoop() default scheduler event loop} on the
|
||||
* scheduler passed to the controller's constructor, or the {@link Scheduler#getDefault
|
||||
* default scheduler} if a scheduler was not explicitly provided.
|
||||
* @see #y(EventLoop)
|
||||
*/
|
||||
public Trigger y() {
|
||||
return y(getScheduler().getDefaultEventLoop());
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the Y button's digital signal.
|
||||
*
|
||||
* @param loop the event loop instance to attach the event to.
|
||||
* @return a Trigger instance representing the Y button's digital signal attached
|
||||
* to the given loop.
|
||||
*/
|
||||
public Trigger y(EventLoop loop) {
|
||||
return button(StadiaController.Button.kY.value, loop);
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the left bumper button's digital signal.
|
||||
*
|
||||
* @return a Trigger instance representing the left bumper button's digital signal attached
|
||||
* to the {@link Scheduler#getDefaultEventLoop() default scheduler event loop} on the
|
||||
* scheduler passed to the controller's constructor, or the {@link Scheduler#getDefault
|
||||
* default scheduler} if a scheduler was not explicitly provided.
|
||||
* @see #leftBumper(EventLoop)
|
||||
*/
|
||||
public Trigger leftBumper() {
|
||||
return leftBumper(getScheduler().getDefaultEventLoop());
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the left bumper button's digital signal.
|
||||
*
|
||||
* @param loop the event loop instance to attach the event to.
|
||||
* @return a Trigger instance representing the left bumper button's digital signal attached
|
||||
* to the given loop.
|
||||
*/
|
||||
public Trigger leftBumper(EventLoop loop) {
|
||||
return button(StadiaController.Button.kLeftBumper.value, loop);
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the right bumper button's digital signal.
|
||||
*
|
||||
* @return a Trigger instance representing the right bumper button's digital signal attached
|
||||
* to the {@link Scheduler#getDefaultEventLoop() default scheduler event loop} on the
|
||||
* scheduler passed to the controller's constructor, or the {@link Scheduler#getDefault
|
||||
* default scheduler} if a scheduler was not explicitly provided.
|
||||
* @see #rightBumper(EventLoop)
|
||||
*/
|
||||
public Trigger rightBumper() {
|
||||
return rightBumper(getScheduler().getDefaultEventLoop());
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the right bumper button's digital signal.
|
||||
*
|
||||
* @param loop the event loop instance to attach the event to.
|
||||
* @return a Trigger instance representing the right bumper button's digital signal attached
|
||||
* to the given loop.
|
||||
*/
|
||||
public Trigger rightBumper(EventLoop loop) {
|
||||
return button(StadiaController.Button.kRightBumper.value, loop);
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the left stick button's digital signal.
|
||||
*
|
||||
* @return a Trigger instance representing the left stick button's digital signal attached
|
||||
* to the {@link Scheduler#getDefaultEventLoop() default scheduler event loop} on the
|
||||
* scheduler passed to the controller's constructor, or the {@link Scheduler#getDefault
|
||||
* default scheduler} if a scheduler was not explicitly provided.
|
||||
* @see #leftStick(EventLoop)
|
||||
*/
|
||||
public Trigger leftStick() {
|
||||
return leftStick(getScheduler().getDefaultEventLoop());
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the left stick button's digital signal.
|
||||
*
|
||||
* @param loop the event loop instance to attach the event to.
|
||||
* @return a Trigger instance representing the left stick button's digital signal attached
|
||||
* to the given loop.
|
||||
*/
|
||||
public Trigger leftStick(EventLoop loop) {
|
||||
return button(StadiaController.Button.kLeftStick.value, loop);
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the right stick button's digital signal.
|
||||
*
|
||||
* @return a Trigger instance representing the right stick button's digital signal attached
|
||||
* to the {@link Scheduler#getDefaultEventLoop() default scheduler event loop} on the
|
||||
* scheduler passed to the controller's constructor, or the {@link Scheduler#getDefault
|
||||
* default scheduler} if a scheduler was not explicitly provided.
|
||||
* @see #rightStick(EventLoop)
|
||||
*/
|
||||
public Trigger rightStick() {
|
||||
return rightStick(getScheduler().getDefaultEventLoop());
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the right stick button's digital signal.
|
||||
*
|
||||
* @param loop the event loop instance to attach the event to.
|
||||
* @return a Trigger instance representing the right stick button's digital signal attached
|
||||
* to the given loop.
|
||||
*/
|
||||
public Trigger rightStick(EventLoop loop) {
|
||||
return button(StadiaController.Button.kRightStick.value, loop);
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the ellipses button's digital signal.
|
||||
*
|
||||
* @return a Trigger instance representing the ellipses button's digital signal attached
|
||||
* to the {@link Scheduler#getDefaultEventLoop() default scheduler event loop} on the
|
||||
* scheduler passed to the controller's constructor, or the {@link Scheduler#getDefault
|
||||
* default scheduler} if a scheduler was not explicitly provided.
|
||||
* @see #ellipses(EventLoop)
|
||||
*/
|
||||
public Trigger ellipses() {
|
||||
return ellipses(getScheduler().getDefaultEventLoop());
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the ellipses button's digital signal.
|
||||
*
|
||||
* @param loop the event loop instance to attach the event to.
|
||||
* @return a Trigger instance representing the ellipses button's digital signal attached
|
||||
* to the given loop.
|
||||
*/
|
||||
public Trigger ellipses(EventLoop loop) {
|
||||
return button(StadiaController.Button.kEllipses.value, loop);
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the hamburger button's digital signal.
|
||||
*
|
||||
* @return a Trigger instance representing the hamburger button's digital signal attached
|
||||
* to the {@link Scheduler#getDefaultEventLoop() default scheduler event loop} on the
|
||||
* scheduler passed to the controller's constructor, or the {@link Scheduler#getDefault
|
||||
* default scheduler} if a scheduler was not explicitly provided.
|
||||
* @see #hamburger(EventLoop)
|
||||
*/
|
||||
public Trigger hamburger() {
|
||||
return hamburger(getScheduler().getDefaultEventLoop());
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the hamburger button's digital signal.
|
||||
*
|
||||
* @param loop the event loop instance to attach the event to.
|
||||
* @return a Trigger instance representing the hamburger button's digital signal attached
|
||||
* to the given loop.
|
||||
*/
|
||||
public Trigger hamburger(EventLoop loop) {
|
||||
return button(StadiaController.Button.kHamburger.value, loop);
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the stadia button's digital signal.
|
||||
*
|
||||
* @return a Trigger instance representing the stadia button's digital signal attached
|
||||
* to the {@link Scheduler#getDefaultEventLoop() default scheduler event loop} on the
|
||||
* scheduler passed to the controller's constructor, or the {@link Scheduler#getDefault
|
||||
* default scheduler} if a scheduler was not explicitly provided.
|
||||
* @see #stadia(EventLoop)
|
||||
*/
|
||||
public Trigger stadia() {
|
||||
return stadia(getScheduler().getDefaultEventLoop());
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the stadia button's digital signal.
|
||||
*
|
||||
* @param loop the event loop instance to attach the event to.
|
||||
* @return a Trigger instance representing the stadia button's digital signal attached
|
||||
* to the given loop.
|
||||
*/
|
||||
public Trigger stadia(EventLoop loop) {
|
||||
return button(StadiaController.Button.kStadia.value, loop);
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the right trigger button's digital signal.
|
||||
*
|
||||
* @return a Trigger instance representing the right trigger button's digital signal attached
|
||||
* to the {@link Scheduler#getDefaultEventLoop() default scheduler event loop} on the
|
||||
* scheduler passed to the controller's constructor, or the {@link Scheduler#getDefault
|
||||
* default scheduler} if a scheduler was not explicitly provided.
|
||||
* @see #rightTrigger(EventLoop)
|
||||
*/
|
||||
public Trigger rightTrigger() {
|
||||
return rightTrigger(getScheduler().getDefaultEventLoop());
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the right trigger button's digital signal.
|
||||
*
|
||||
* @param loop the event loop instance to attach the event to.
|
||||
* @return a Trigger instance representing the right trigger button's digital signal attached
|
||||
* to the given loop.
|
||||
*/
|
||||
public Trigger rightTrigger(EventLoop loop) {
|
||||
return button(StadiaController.Button.kRightTrigger.value, loop);
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the left trigger button's digital signal.
|
||||
*
|
||||
* @return a Trigger instance representing the left trigger button's digital signal attached
|
||||
* to the {@link Scheduler#getDefaultEventLoop() default scheduler event loop} on the
|
||||
* scheduler passed to the controller's constructor, or the {@link Scheduler#getDefault
|
||||
* default scheduler} if a scheduler was not explicitly provided.
|
||||
* @see #leftTrigger(EventLoop)
|
||||
*/
|
||||
public Trigger leftTrigger() {
|
||||
return leftTrigger(getScheduler().getDefaultEventLoop());
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the left trigger button's digital signal.
|
||||
*
|
||||
* @param loop the event loop instance to attach the event to.
|
||||
* @return a Trigger instance representing the left trigger button's digital signal attached
|
||||
* to the given loop.
|
||||
*/
|
||||
public Trigger leftTrigger(EventLoop loop) {
|
||||
return button(StadiaController.Button.kLeftTrigger.value, loop);
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the google button's digital signal.
|
||||
*
|
||||
* @return a Trigger instance representing the google button's digital signal attached
|
||||
* to the {@link Scheduler#getDefaultEventLoop() default scheduler event loop} on the
|
||||
* scheduler passed to the controller's constructor, or the {@link Scheduler#getDefault
|
||||
* default scheduler} if a scheduler was not explicitly provided.
|
||||
* @see #google(EventLoop)
|
||||
*/
|
||||
public Trigger google() {
|
||||
return google(getScheduler().getDefaultEventLoop());
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the google button's digital signal.
|
||||
*
|
||||
* @param loop the event loop instance to attach the event to.
|
||||
* @return a Trigger instance representing the google button's digital signal attached
|
||||
* to the given loop.
|
||||
*/
|
||||
public Trigger google(EventLoop loop) {
|
||||
return button(StadiaController.Button.kGoogle.value, loop);
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the frame button's digital signal.
|
||||
*
|
||||
* @return a Trigger instance representing the frame button's digital signal attached
|
||||
* to the {@link Scheduler#getDefaultEventLoop() default scheduler event loop} on the
|
||||
* scheduler passed to the controller's constructor, or the {@link Scheduler#getDefault
|
||||
* default scheduler} if a scheduler was not explicitly provided.
|
||||
* @see #frame(EventLoop)
|
||||
*/
|
||||
public Trigger frame() {
|
||||
return frame(getScheduler().getDefaultEventLoop());
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the frame button's digital signal.
|
||||
*
|
||||
* @param loop the event loop instance to attach the event to.
|
||||
* @return a Trigger instance representing the frame button's digital signal attached
|
||||
* to the given loop.
|
||||
*/
|
||||
public Trigger frame(EventLoop loop) {
|
||||
return button(StadiaController.Button.kFrame.value, loop);
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the X axis value of left side of the controller. Right is positive.
|
||||
*
|
||||
* @return The axis value.
|
||||
*/
|
||||
public double getLeftX() {
|
||||
return m_hid.getLeftX();
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the X axis value of right side of the controller. Right is positive.
|
||||
*
|
||||
* @return The axis value.
|
||||
*/
|
||||
public double getRightX() {
|
||||
return m_hid.getRightX();
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the Y axis value of left side of the controller. Back is positive.
|
||||
*
|
||||
* @return The axis value.
|
||||
*/
|
||||
public double getLeftY() {
|
||||
return m_hid.getLeftY();
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the Y axis value of right side of the controller. Back is positive.
|
||||
*
|
||||
* @return The axis value.
|
||||
*/
|
||||
public double getRightY() {
|
||||
return m_hid.getRightY();
|
||||
}
|
||||
}
|
||||
435
commandsv3/src/generated/main/java/org/wpilib/commands3/button/CommandXboxController.java
generated
Normal file
435
commandsv3/src/generated/main/java/org/wpilib/commands3/button/CommandXboxController.java
generated
Normal file
@@ -0,0 +1,435 @@
|
||||
// Copyright (c) FIRST and other WPILib contributors.
|
||||
// Open Source Software; you can modify and/or share it under the terms of
|
||||
// the WPILib BSD license file in the root directory of this project.
|
||||
|
||||
// THIS FILE WAS AUTO-GENERATED BY ./commandsv3/generate_files.py. DO NOT MODIFY
|
||||
|
||||
package org.wpilib.commands3.button;
|
||||
|
||||
import edu.wpi.first.wpilibj.XboxController;
|
||||
import edu.wpi.first.wpilibj.event.EventLoop;
|
||||
import org.wpilib.commands3.Scheduler;
|
||||
import org.wpilib.commands3.Trigger;
|
||||
|
||||
/**
|
||||
* A version of {@link XboxController} with {@link Trigger} factories for command-based.
|
||||
*
|
||||
* @see XboxController
|
||||
*/
|
||||
@SuppressWarnings("MethodName")
|
||||
public class CommandXboxController extends CommandGenericHID {
|
||||
private final XboxController m_hid;
|
||||
|
||||
/**
|
||||
* Construct an instance of a controller. Commands bound to buttons on the controller will be
|
||||
* scheduled on the {@link Scheduler#getDefault() default scheduler} using its default event loop.
|
||||
*
|
||||
* @param port The port index on the Driver Station that the controller is plugged into.
|
||||
*/
|
||||
public CommandXboxController(int port) {
|
||||
super(port);
|
||||
m_hid = new XboxController(port);
|
||||
}
|
||||
|
||||
/**
|
||||
* Construct an instance of a controller. Commands bound to buttons on the controller will be
|
||||
* scheduled on the given scheduler using its default event loop.
|
||||
*
|
||||
* @param scheduler The scheduler that should execute the triggered commands.
|
||||
* @param port The port index on the Driver Station that the controller is plugged into.
|
||||
*/
|
||||
public CommandXboxController(Scheduler scheduler, int port) {
|
||||
super(scheduler, port);
|
||||
m_hid = new XboxController(port);
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the underlying GenericHID object.
|
||||
*
|
||||
* @return the wrapped GenericHID object
|
||||
*/
|
||||
@Override
|
||||
public XboxController getHID() {
|
||||
return m_hid;
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the A button's digital signal.
|
||||
*
|
||||
* @return a Trigger instance representing the A button's digital signal attached
|
||||
* to the {@link Scheduler#getDefaultEventLoop() default scheduler event loop} on the
|
||||
* scheduler passed to the controller's constructor, or the {@link Scheduler#getDefault
|
||||
* default scheduler} if a scheduler was not explicitly provided.
|
||||
* @see #a(EventLoop)
|
||||
*/
|
||||
public Trigger a() {
|
||||
return a(getScheduler().getDefaultEventLoop());
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the A button's digital signal.
|
||||
*
|
||||
* @param loop the event loop instance to attach the event to.
|
||||
* @return a Trigger instance representing the A button's digital signal attached
|
||||
* to the given loop.
|
||||
*/
|
||||
public Trigger a(EventLoop loop) {
|
||||
return button(XboxController.Button.kA.value, loop);
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the B button's digital signal.
|
||||
*
|
||||
* @return a Trigger instance representing the B button's digital signal attached
|
||||
* to the {@link Scheduler#getDefaultEventLoop() default scheduler event loop} on the
|
||||
* scheduler passed to the controller's constructor, or the {@link Scheduler#getDefault
|
||||
* default scheduler} if a scheduler was not explicitly provided.
|
||||
* @see #b(EventLoop)
|
||||
*/
|
||||
public Trigger b() {
|
||||
return b(getScheduler().getDefaultEventLoop());
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the B button's digital signal.
|
||||
*
|
||||
* @param loop the event loop instance to attach the event to.
|
||||
* @return a Trigger instance representing the B button's digital signal attached
|
||||
* to the given loop.
|
||||
*/
|
||||
public Trigger b(EventLoop loop) {
|
||||
return button(XboxController.Button.kB.value, loop);
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the X button's digital signal.
|
||||
*
|
||||
* @return a Trigger instance representing the X button's digital signal attached
|
||||
* to the {@link Scheduler#getDefaultEventLoop() default scheduler event loop} on the
|
||||
* scheduler passed to the controller's constructor, or the {@link Scheduler#getDefault
|
||||
* default scheduler} if a scheduler was not explicitly provided.
|
||||
* @see #x(EventLoop)
|
||||
*/
|
||||
public Trigger x() {
|
||||
return x(getScheduler().getDefaultEventLoop());
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the X button's digital signal.
|
||||
*
|
||||
* @param loop the event loop instance to attach the event to.
|
||||
* @return a Trigger instance representing the X button's digital signal attached
|
||||
* to the given loop.
|
||||
*/
|
||||
public Trigger x(EventLoop loop) {
|
||||
return button(XboxController.Button.kX.value, loop);
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the Y button's digital signal.
|
||||
*
|
||||
* @return a Trigger instance representing the Y button's digital signal attached
|
||||
* to the {@link Scheduler#getDefaultEventLoop() default scheduler event loop} on the
|
||||
* scheduler passed to the controller's constructor, or the {@link Scheduler#getDefault
|
||||
* default scheduler} if a scheduler was not explicitly provided.
|
||||
* @see #y(EventLoop)
|
||||
*/
|
||||
public Trigger y() {
|
||||
return y(getScheduler().getDefaultEventLoop());
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the Y button's digital signal.
|
||||
*
|
||||
* @param loop the event loop instance to attach the event to.
|
||||
* @return a Trigger instance representing the Y button's digital signal attached
|
||||
* to the given loop.
|
||||
*/
|
||||
public Trigger y(EventLoop loop) {
|
||||
return button(XboxController.Button.kY.value, loop);
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the left bumper button's digital signal.
|
||||
*
|
||||
* @return a Trigger instance representing the left bumper button's digital signal attached
|
||||
* to the {@link Scheduler#getDefaultEventLoop() default scheduler event loop} on the
|
||||
* scheduler passed to the controller's constructor, or the {@link Scheduler#getDefault
|
||||
* default scheduler} if a scheduler was not explicitly provided.
|
||||
* @see #leftBumper(EventLoop)
|
||||
*/
|
||||
public Trigger leftBumper() {
|
||||
return leftBumper(getScheduler().getDefaultEventLoop());
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the left bumper button's digital signal.
|
||||
*
|
||||
* @param loop the event loop instance to attach the event to.
|
||||
* @return a Trigger instance representing the left bumper button's digital signal attached
|
||||
* to the given loop.
|
||||
*/
|
||||
public Trigger leftBumper(EventLoop loop) {
|
||||
return button(XboxController.Button.kLeftBumper.value, loop);
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the right bumper button's digital signal.
|
||||
*
|
||||
* @return a Trigger instance representing the right bumper button's digital signal attached
|
||||
* to the {@link Scheduler#getDefaultEventLoop() default scheduler event loop} on the
|
||||
* scheduler passed to the controller's constructor, or the {@link Scheduler#getDefault
|
||||
* default scheduler} if a scheduler was not explicitly provided.
|
||||
* @see #rightBumper(EventLoop)
|
||||
*/
|
||||
public Trigger rightBumper() {
|
||||
return rightBumper(getScheduler().getDefaultEventLoop());
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the right bumper button's digital signal.
|
||||
*
|
||||
* @param loop the event loop instance to attach the event to.
|
||||
* @return a Trigger instance representing the right bumper button's digital signal attached
|
||||
* to the given loop.
|
||||
*/
|
||||
public Trigger rightBumper(EventLoop loop) {
|
||||
return button(XboxController.Button.kRightBumper.value, loop);
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the back button's digital signal.
|
||||
*
|
||||
* @return a Trigger instance representing the back button's digital signal attached
|
||||
* to the {@link Scheduler#getDefaultEventLoop() default scheduler event loop} on the
|
||||
* scheduler passed to the controller's constructor, or the {@link Scheduler#getDefault
|
||||
* default scheduler} if a scheduler was not explicitly provided.
|
||||
* @see #back(EventLoop)
|
||||
*/
|
||||
public Trigger back() {
|
||||
return back(getScheduler().getDefaultEventLoop());
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the back button's digital signal.
|
||||
*
|
||||
* @param loop the event loop instance to attach the event to.
|
||||
* @return a Trigger instance representing the back button's digital signal attached
|
||||
* to the given loop.
|
||||
*/
|
||||
public Trigger back(EventLoop loop) {
|
||||
return button(XboxController.Button.kBack.value, loop);
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the start button's digital signal.
|
||||
*
|
||||
* @return a Trigger instance representing the start button's digital signal attached
|
||||
* to the {@link Scheduler#getDefaultEventLoop() default scheduler event loop} on the
|
||||
* scheduler passed to the controller's constructor, or the {@link Scheduler#getDefault
|
||||
* default scheduler} if a scheduler was not explicitly provided.
|
||||
* @see #start(EventLoop)
|
||||
*/
|
||||
public Trigger start() {
|
||||
return start(getScheduler().getDefaultEventLoop());
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the start button's digital signal.
|
||||
*
|
||||
* @param loop the event loop instance to attach the event to.
|
||||
* @return a Trigger instance representing the start button's digital signal attached
|
||||
* to the given loop.
|
||||
*/
|
||||
public Trigger start(EventLoop loop) {
|
||||
return button(XboxController.Button.kStart.value, loop);
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the left stick button's digital signal.
|
||||
*
|
||||
* @return a Trigger instance representing the left stick button's digital signal attached
|
||||
* to the {@link Scheduler#getDefaultEventLoop() default scheduler event loop} on the
|
||||
* scheduler passed to the controller's constructor, or the {@link Scheduler#getDefault
|
||||
* default scheduler} if a scheduler was not explicitly provided.
|
||||
* @see #leftStick(EventLoop)
|
||||
*/
|
||||
public Trigger leftStick() {
|
||||
return leftStick(getScheduler().getDefaultEventLoop());
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the left stick button's digital signal.
|
||||
*
|
||||
* @param loop the event loop instance to attach the event to.
|
||||
* @return a Trigger instance representing the left stick button's digital signal attached
|
||||
* to the given loop.
|
||||
*/
|
||||
public Trigger leftStick(EventLoop loop) {
|
||||
return button(XboxController.Button.kLeftStick.value, loop);
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the right stick button's digital signal.
|
||||
*
|
||||
* @return a Trigger instance representing the right stick button's digital signal attached
|
||||
* to the {@link Scheduler#getDefaultEventLoop() default scheduler event loop} on the
|
||||
* scheduler passed to the controller's constructor, or the {@link Scheduler#getDefault
|
||||
* default scheduler} if a scheduler was not explicitly provided.
|
||||
* @see #rightStick(EventLoop)
|
||||
*/
|
||||
public Trigger rightStick() {
|
||||
return rightStick(getScheduler().getDefaultEventLoop());
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the right stick button's digital signal.
|
||||
*
|
||||
* @param loop the event loop instance to attach the event to.
|
||||
* @return a Trigger instance representing the right stick button's digital signal attached
|
||||
* to the given loop.
|
||||
*/
|
||||
public Trigger rightStick(EventLoop loop) {
|
||||
return button(XboxController.Button.kRightStick.value, loop);
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the axis value of the left trigger. The returned
|
||||
* trigger will be true when the axis value is greater than {@code threshold}.
|
||||
*
|
||||
* @param threshold the minimum axis value for the returned {@link Trigger} to be true. This value
|
||||
* should be in the range [0, 1] where 0 is the unpressed state of the axis.
|
||||
* @param loop the event loop instance to attach the Trigger to.
|
||||
* @return a Trigger instance that is true when the left trigger's axis exceeds the provided
|
||||
* threshold, attached to the given event loop
|
||||
*/
|
||||
public Trigger leftTrigger(double threshold, EventLoop loop) {
|
||||
return axisGreaterThan(XboxController.Axis.kLeftTrigger.value, threshold, loop);
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the axis value of the left trigger. The returned
|
||||
* trigger will be true when the axis value is greater than {@code threshold}.
|
||||
*
|
||||
* @param threshold the minimum axis value for the returned {@link Trigger} to be true. This value
|
||||
* should be in the range [0, 1] where 0 is the unpressed state of the axis.
|
||||
* @return a Trigger instance that is true when the left trigger's axis exceeds the provided
|
||||
* threshold, attached to the {@link Scheduler#getDefaultEventLoop() default scheduler event
|
||||
* loop} on the scheduler passed to the controller's constructor, or the {@link
|
||||
* Scheduler#getDefault default scheduler} if a scheduler was not explicitly provided.
|
||||
*/
|
||||
public Trigger leftTrigger(double threshold) {
|
||||
return leftTrigger(threshold, getScheduler().getDefaultEventLoop());
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the axis value of the left trigger. The returned trigger
|
||||
* will be true when the axis value is greater than 0.5.
|
||||
*
|
||||
* @return a Trigger instance that is true when the left trigger's axis exceeds 0.5, attached to
|
||||
* the {@link Scheduler#getDefaultEventLoop() default scheduler event loop} on the
|
||||
* scheduler passed to the controller's constructor, or the {@link Scheduler#getDefault
|
||||
* default scheduler} if a scheduler was not explicitly provided.
|
||||
*/
|
||||
public Trigger leftTrigger() {
|
||||
return leftTrigger(0.5);
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the axis value of the right trigger. The returned
|
||||
* trigger will be true when the axis value is greater than {@code threshold}.
|
||||
*
|
||||
* @param threshold the minimum axis value for the returned {@link Trigger} to be true. This value
|
||||
* should be in the range [0, 1] where 0 is the unpressed state of the axis.
|
||||
* @param loop the event loop instance to attach the Trigger to.
|
||||
* @return a Trigger instance that is true when the right trigger's axis exceeds the provided
|
||||
* threshold, attached to the given event loop
|
||||
*/
|
||||
public Trigger rightTrigger(double threshold, EventLoop loop) {
|
||||
return axisGreaterThan(XboxController.Axis.kRightTrigger.value, threshold, loop);
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the axis value of the right trigger. The returned
|
||||
* trigger will be true when the axis value is greater than {@code threshold}.
|
||||
*
|
||||
* @param threshold the minimum axis value for the returned {@link Trigger} to be true. This value
|
||||
* should be in the range [0, 1] where 0 is the unpressed state of the axis.
|
||||
* @return a Trigger instance that is true when the right trigger's axis exceeds the provided
|
||||
* threshold, attached to the {@link Scheduler#getDefaultEventLoop() default scheduler event
|
||||
* loop} on the scheduler passed to the controller's constructor, or the {@link
|
||||
* Scheduler#getDefault default scheduler} if a scheduler was not explicitly provided.
|
||||
*/
|
||||
public Trigger rightTrigger(double threshold) {
|
||||
return rightTrigger(threshold, getScheduler().getDefaultEventLoop());
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructs a Trigger instance around the axis value of the right trigger. The returned trigger
|
||||
* will be true when the axis value is greater than 0.5.
|
||||
*
|
||||
* @return a Trigger instance that is true when the right trigger's axis exceeds 0.5, attached to
|
||||
* the {@link Scheduler#getDefaultEventLoop() default scheduler event loop} on the
|
||||
* scheduler passed to the controller's constructor, or the {@link Scheduler#getDefault
|
||||
* default scheduler} if a scheduler was not explicitly provided.
|
||||
*/
|
||||
public Trigger rightTrigger() {
|
||||
return rightTrigger(0.5);
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the X axis value of left side of the controller. Right is positive.
|
||||
*
|
||||
* @return The axis value.
|
||||
*/
|
||||
public double getLeftX() {
|
||||
return m_hid.getLeftX();
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the X axis value of right side of the controller. Right is positive.
|
||||
*
|
||||
* @return The axis value.
|
||||
*/
|
||||
public double getRightX() {
|
||||
return m_hid.getRightX();
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the Y axis value of left side of the controller. Back is positive.
|
||||
*
|
||||
* @return The axis value.
|
||||
*/
|
||||
public double getLeftY() {
|
||||
return m_hid.getLeftY();
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the Y axis value of right side of the controller. Back is positive.
|
||||
*
|
||||
* @return The axis value.
|
||||
*/
|
||||
public double getRightY() {
|
||||
return m_hid.getRightY();
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the left trigger axis value of the controller. Note that this axis is bound to the
|
||||
* range of [0, 1] as opposed to the usual [-1, 1].
|
||||
*
|
||||
* @return The axis value.
|
||||
*/
|
||||
public double getLeftTriggerAxis() {
|
||||
return m_hid.getLeftTriggerAxis();
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the right trigger axis value of the controller. Note that this axis is bound to the
|
||||
* range of [0, 1] as opposed to the usual [-1, 1].
|
||||
*
|
||||
* @return The axis value.
|
||||
*/
|
||||
public double getRightTriggerAxis() {
|
||||
return m_hid.getRightTriggerAxis();
|
||||
}
|
||||
}
|
||||
1883
commandsv3/src/generated/main/java/org/wpilib/commands3/proto/ProtobufCommands.java
generated
Normal file
1883
commandsv3/src/generated/main/java/org/wpilib/commands3/proto/ProtobufCommands.java
generated
Normal file
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user