edu.wpi.first.wpilibj

## Class XboxController

- java.lang.Object
- - edu.wpi.first.wpilibj.GenericHID
  - - edu.wpi.first.wpilibj.XboxController

-     public class XboxController
      extends GenericHID

  Handle input from Xbox 360 or Xbox One controllers connected to the Driver Station.

  This class handles Xbox input that comes from the Driver Station. Each time a value is requested the most recent value is returned. There is a single class instance for each controller and the mapping of ports to hardware buttons depends on the code in the Driver Station.

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class edu.wpi.first.wpilibj.GenericHID

      `GenericHID.Hand, GenericHID.HIDType, GenericHID.RumbleType`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `XboxController(int port)` Construct an instance of a joystick.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | `getAButton()` Read the value of the A button on the controller.
    `boolean` | `getAButtonPressed()` Whether the A button was pressed since the last check.
    `boolean` | `getAButtonReleased()` Whether the A button was released since the last check.
    `boolean` | `getBackButton()` Read the value of the back button on the controller.
    `boolean` | `getBackButtonPressed()` Whether the back button was pressed since the last check.
    `boolean` | `getBackButtonReleased()` Whether the back button was released since the last check.
    `boolean` | `getBButton()` Read the value of the B button on the controller.
    `boolean` | `getBButtonPressed()` Whether the B button was pressed since the last check.
    `boolean` | `getBButtonReleased()` Whether the B button was released since the last check.
    `boolean` | `getBumper(GenericHID.Hand hand)` Read the value of the bumper button on the controller.
    `boolean` | `getBumperPressed(GenericHID.Hand hand)` Whether the bumper was pressed since the last check.
    `boolean` | `getBumperReleased(GenericHID.Hand hand)` Whether the bumper was released since the last check.
    `boolean` | `getStartButton()` Read the value of the start button on the controller.
    `boolean` | `getStartButtonPressed()` Whether the start button was pressed since the last check.
    `boolean` | `getStartButtonReleased()` Whether the start button was released since the last check.
    `boolean` | `getStickButton(GenericHID.Hand hand)` Read the value of the stick button on the controller.
    `boolean` | `getStickButtonPressed(GenericHID.Hand hand)` Whether the stick button was pressed since the last check.
    `boolean` | `getStickButtonReleased(GenericHID.Hand hand)` Whether the stick button was released since the last check.
    `double` | `getTriggerAxis(GenericHID.Hand hand)` Get the trigger axis value of the controller.
    `double` | `getX(GenericHID.Hand hand)` Get the X axis value of the controller.
    `boolean` | `getXButton()` Read the value of the X button on the controller.
    `boolean` | `getXButtonPressed()` Whether the X button was pressed since the last check.
    `boolean` | `getXButtonReleased()` Whether the X button was released since the last check.
    `double` | `getY(GenericHID.Hand hand)` Get the Y axis value of the controller.
    `boolean` | `getYButton()` Read the value of the Y button on the controller.
    `boolean` | `getYButtonPressed()` Whether the Y button was pressed since the last check.
    `boolean` | `getYButtonReleased()` Whether the Y button was released since the last check.

    - ### Methods inherited from class edu.wpi.first.wpilibj.GenericHID

      `getAxisCount, getAxisType, getButtonCount, getName, getPort, getPOV, getPOV, getPOVCount, getRawAxis, getRawButton, getRawButtonPressed, getRawButtonReleased, getType, getX, getY, setOutput, setOutputs, setRumble`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### XboxController

          public XboxController(int port)

      Construct an instance of a joystick. The joystick index is the USB port on the drivers station.
      Parameters:
        `port` - The port on the Driver Station that the joystick is plugged into.

  - ### Method Detail

    - #### getX

          public double getX(GenericHID.Hand hand)

      Get the X axis value of the controller.
      Specified by:
        `getX` in class `GenericHID`
      Parameters:
        `hand` - Side of controller whose value should be returned.
      Returns:
        The X axis value of the controller.

    - #### getY

          public double getY(GenericHID.Hand hand)

      Get the Y axis value of the controller.
      Specified by:
        `getY` in class `GenericHID`
      Parameters:
        `hand` - Side of controller whose value should be returned.
      Returns:
        The Y axis value of the controller.

    - #### getTriggerAxis

          public double getTriggerAxis(GenericHID.Hand hand)

      Get the trigger axis value of the controller.
      Parameters:
        `hand` - Side of controller whose value should be returned.
      Returns:
        The trigger axis value of the controller.

    - #### getBumper

          public boolean getBumper(GenericHID.Hand hand)

      Read the value of the bumper button on the controller.
      Parameters:
        `hand` - Side of controller whose value should be returned.
      Returns:
        The state of the button.

    - #### getBumperPressed

          public boolean getBumperPressed(GenericHID.Hand hand)

      Whether the bumper was pressed since the last check.
      Parameters:
        `hand` - Side of controller whose value should be returned.
      Returns:
        Whether the button was pressed since the last check.

    - #### getBumperReleased

          public boolean getBumperReleased(GenericHID.Hand hand)

      Whether the bumper was released since the last check.
      Parameters:
        `hand` - Side of controller whose value should be returned.
      Returns:
        Whether the button was released since the last check.

    - #### getStickButton

          public boolean getStickButton(GenericHID.Hand hand)

      Read the value of the stick button on the controller.
      Parameters:
        `hand` - Side of controller whose value should be returned.
      Returns:
        The state of the button.

    - #### getStickButtonPressed

          public boolean getStickButtonPressed(GenericHID.Hand hand)

      Whether the stick button was pressed since the last check.
      Parameters:
        `hand` - Side of controller whose value should be returned.
      Returns:
        Whether the button was pressed since the last check.

    - #### getStickButtonReleased

          public boolean getStickButtonReleased(GenericHID.Hand hand)

      Whether the stick button was released since the last check.
      Parameters:
        `hand` - Side of controller whose value should be returned.
      Returns:
        Whether the button was released since the last check.

    - #### getAButton

          public boolean getAButton()

      Read the value of the A button on the controller.
      Returns:
        The state of the button.

    - #### getAButtonPressed

          public boolean getAButtonPressed()

      Whether the A button was pressed since the last check.
      Returns:
        Whether the button was pressed since the last check.

    - #### getAButtonReleased

          public boolean getAButtonReleased()

      Whether the A button was released since the last check.
      Returns:
        Whether the button was released since the last check.

    - #### getBButton

          public boolean getBButton()

      Read the value of the B button on the controller.
      Returns:
        The state of the button.

    - #### getBButtonPressed

          public boolean getBButtonPressed()

      Whether the B button was pressed since the last check.
      Returns:
        Whether the button was pressed since the last check.

    - #### getBButtonReleased

          public boolean getBButtonReleased()

      Whether the B button was released since the last check.
      Returns:
        Whether the button was released since the last check.

    - #### getXButton

          public boolean getXButton()

      Read the value of the X button on the controller.
      Returns:
        The state of the button.

    - #### getXButtonPressed

          public boolean getXButtonPressed()

      Whether the X button was pressed since the last check.
      Returns:
        Whether the button was pressed since the last check.

    - #### getXButtonReleased

          public boolean getXButtonReleased()

      Whether the X button was released since the last check.
      Returns:
        Whether the button was released since the last check.

    - #### getYButton

          public boolean getYButton()

      Read the value of the Y button on the controller.
      Returns:
        The state of the button.

    - #### getYButtonPressed

          public boolean getYButtonPressed()

      Whether the Y button was pressed since the last check.
      Returns:
        Whether the button was pressed since the last check.

    - #### getYButtonReleased

          public boolean getYButtonReleased()

      Whether the Y button was released since the last check.
      Returns:
        Whether the button was released since the last check.

    - #### getBackButton

          public boolean getBackButton()

      Read the value of the back button on the controller.
      Returns:
        The state of the button.

    - #### getBackButtonPressed

          public boolean getBackButtonPressed()

      Whether the back button was pressed since the last check.
      Returns:
        Whether the button was pressed since the last check.

    - #### getBackButtonReleased

          public boolean getBackButtonReleased()

      Whether the back button was released since the last check.
      Returns:
        Whether the button was released since the last check.

    - #### getStartButton

          public boolean getStartButton()

      Read the value of the start button on the controller.
      Returns:
        The state of the button.

    - #### getStartButtonPressed

          public boolean getStartButtonPressed()

      Whether the start button was pressed since the last check.
      Returns:
        Whether the button was pressed since the last check.

    - #### getStartButtonReleased

          public boolean getStartButtonReleased()

      Whether the start button was released since the last check.
      Returns:
        Whether the button was released since the last check.