Handle input from Xbox 360 or Xbox One controllers connected to the Driver Station.
More...
|
| XboxController (int port) |
| Construct an instance of an Xbox controller. More...
|
|
| ~XboxController () override=default |
|
| XboxController (XboxController &&)=default |
|
XboxController & | operator= (XboxController &&)=default |
|
double | GetLeftX () const |
| Get the X axis value of left side of the controller. More...
|
|
double | GetRightX () const |
| Get the X axis value of right side of the controller. More...
|
|
double | GetLeftY () const |
| Get the Y axis value of left side of the controller. More...
|
|
double | GetRightY () const |
| Get the Y axis value of right side of the controller. More...
|
|
double | GetLeftTriggerAxis () const |
| Get the left trigger (LT) axis value of the controller. More...
|
|
double | GetRightTriggerAxis () const |
| Get the right trigger (RT) axis value of the controller. More...
|
|
bool | GetLeftBumper () const |
| Read the value of the left bumper (LB) button on the controller. More...
|
|
bool | GetRightBumper () const |
| Read the value of the right bumper (RB) button on the controller. More...
|
|
bool | GetLeftBumperPressed () |
| Whether the left bumper (LB) was pressed since the last check. More...
|
|
bool | GetRightBumperPressed () |
| Whether the right bumper (RB) was pressed since the last check. More...
|
|
bool | GetLeftBumperReleased () |
| Whether the left bumper (LB) was released since the last check. More...
|
|
bool | GetRightBumperReleased () |
| Whether the right bumper (RB) was released since the last check. More...
|
|
BooleanEvent | LeftBumper (EventLoop *loop) const |
| Constructs an event instance around the left bumper's digital signal. More...
|
|
BooleanEvent | RightBumper (EventLoop *loop) const |
| Constructs an event instance around the right bumper's digital signal. More...
|
|
bool | GetLeftStickButton () const |
| Read the value of the left stick button (LSB) on the controller. More...
|
|
bool | GetRightStickButton () const |
| Read the value of the right stick button (RSB) on the controller. More...
|
|
bool | GetLeftStickButtonPressed () |
| Whether the left stick button (LSB) was pressed since the last check. More...
|
|
bool | GetRightStickButtonPressed () |
| Whether the right stick button (RSB) was pressed since the last check. More...
|
|
bool | GetLeftStickButtonReleased () |
| Whether the left stick button (LSB) was released since the last check. More...
|
|
bool | GetRightStickButtonReleased () |
| Whether the right stick button (RSB) was released since the last check. More...
|
|
BooleanEvent | LeftStick (EventLoop *loop) const |
| Constructs an event instance around the left stick's digital signal. More...
|
|
BooleanEvent | RightStick (EventLoop *loop) const |
| Constructs an event instance around the right stick's digital signal. More...
|
|
bool | GetAButton () const |
| Read the value of the A button on the controller. More...
|
|
bool | GetAButtonPressed () |
| Whether the A button was pressed since the last check. More...
|
|
bool | GetAButtonReleased () |
| Whether the A button was released since the last check. More...
|
|
BooleanEvent | A (EventLoop *loop) const |
| Constructs an event instance around the A button's digital signal. More...
|
|
bool | GetBButton () const |
| Read the value of the B button on the controller. More...
|
|
bool | GetBButtonPressed () |
| Whether the B button was pressed since the last check. More...
|
|
bool | GetBButtonReleased () |
| Whether the B button was released since the last check. More...
|
|
BooleanEvent | B (EventLoop *loop) const |
| Constructs an event instance around the B button's digital signal. More...
|
|
bool | GetXButton () const |
| Read the value of the X button on the controller. More...
|
|
bool | GetXButtonPressed () |
| Whether the X button was pressed since the last check. More...
|
|
bool | GetXButtonReleased () |
| Whether the X button was released since the last check. More...
|
|
BooleanEvent | X (EventLoop *loop) const |
| Constructs an event instance around the X button's digital signal. More...
|
|
bool | GetYButton () const |
| Read the value of the Y button on the controller. More...
|
|
bool | GetYButtonPressed () |
| Whether the Y button was pressed since the last check. More...
|
|
bool | GetYButtonReleased () |
| Whether the Y button was released since the last check. More...
|
|
BooleanEvent | Y (EventLoop *loop) const |
| Constructs an event instance around the Y button's digital signal. More...
|
|
bool | GetBackButton () const |
| Read the value of the back button on the controller. More...
|
|
bool | GetBackButtonPressed () |
| Whether the back button was pressed since the last check. More...
|
|
bool | GetBackButtonReleased () |
| Whether the back button was released since the last check. More...
|
|
BooleanEvent | Back (EventLoop *loop) const |
| Constructs an event instance around the back button's digital signal. More...
|
|
bool | GetStartButton () const |
| Read the value of the start button on the controller. More...
|
|
bool | GetStartButtonPressed () |
| Whether the start button was pressed since the last check. More...
|
|
bool | GetStartButtonReleased () |
| Whether the start button was released since the last check. More...
|
|
BooleanEvent | Start (EventLoop *loop) const |
| Constructs an event instance around the start button's digital signal. More...
|
|
BooleanEvent | LeftTrigger (double threshold, EventLoop *loop) const |
| Constructs an event instance around the axis value of the left trigger. More...
|
|
BooleanEvent | LeftTrigger (EventLoop *loop) const |
| Constructs an event instance around the axis value of the left trigger. More...
|
|
BooleanEvent | RightTrigger (double threshold, EventLoop *loop) const |
| Constructs an event instance around the axis value of the right trigger. More...
|
|
BooleanEvent | RightTrigger (EventLoop *loop) const |
| Constructs an event instance around the axis value of the right trigger. More...
|
|
| GenericHID (int port) |
|
virtual | ~GenericHID ()=default |
|
| GenericHID (GenericHID &&)=default |
|
GenericHID & | operator= (GenericHID &&)=default |
|
bool | GetRawButton (int button) const |
| Get the button value (starting at button 1). More...
|
|
bool | GetRawButtonPressed (int button) |
| Whether the button was pressed since the last check. More...
|
|
bool | GetRawButtonReleased (int button) |
| Whether the button was released since the last check. More...
|
|
BooleanEvent | Button (int button, EventLoop *loop) const |
| Constructs an event instance around this button's digital signal. More...
|
|
double | GetRawAxis (int axis) const |
| Get the value of the axis. More...
|
|
int | GetPOV (int pov=0) const |
| Get the angle in degrees of a POV on the HID. More...
|
|
BooleanEvent | POV (int angle, EventLoop *loop) const |
| Constructs a BooleanEvent instance based around this angle of a POV on the HID. More...
|
|
BooleanEvent | POV (int pov, int angle, EventLoop *loop) const |
| Constructs a BooleanEvent instance based around this angle of a POV on the HID. More...
|
|
BooleanEvent | POVUp (EventLoop *loop) const |
| Constructs a BooleanEvent instance based around the 0 degree angle (up) of the default (index 0) POV on the HID. More...
|
|
BooleanEvent | POVUpRight (EventLoop *loop) const |
| Constructs a BooleanEvent instance based around the 45 degree angle (right up) of the default (index 0) POV on the HID. More...
|
|
BooleanEvent | POVRight (EventLoop *loop) const |
| Constructs a BooleanEvent instance based around the 90 degree angle (right) of the default (index 0) POV on the HID. More...
|
|
BooleanEvent | POVDownRight (EventLoop *loop) const |
| Constructs a BooleanEvent instance based around the 135 degree angle (right down) of the default (index 0) POV on the HID. More...
|
|
BooleanEvent | POVDown (EventLoop *loop) const |
| Constructs a BooleanEvent instance based around the 180 degree angle (down) of the default (index 0) POV on the HID. More...
|
|
BooleanEvent | POVDownLeft (EventLoop *loop) const |
| Constructs a BooleanEvent instance based around the 225 degree angle (down left) of the default (index 0) POV on the HID. More...
|
|
BooleanEvent | POVLeft (EventLoop *loop) const |
| Constructs a BooleanEvent instance based around the 270 degree angle (left) of the default (index 0) POV on the HID. More...
|
|
BooleanEvent | POVUpLeft (EventLoop *loop) const |
| Constructs a BooleanEvent instance based around the 315 degree angle (left up) of the default (index 0) POV on the HID. More...
|
|
BooleanEvent | POVCenter (EventLoop *loop) const |
| Constructs a BooleanEvent instance based around the center (not pressed) of the default (index 0) POV on the HID. More...
|
|
BooleanEvent | AxisLessThan (int axis, double threshold, EventLoop *loop) const |
| Constructs an event instance that is true when the axis value is less than threshold. More...
|
|
BooleanEvent | AxisGreaterThan (int axis, double threshold, EventLoop *loop) const |
| Constructs an event instance that is true when the axis value is greater than threshold. More...
|
|
int | GetAxisCount () const |
| Get the number of axes for the HID. More...
|
|
int | GetPOVCount () const |
| Get the number of POVs for the HID. More...
|
|
int | GetButtonCount () const |
| Get the number of buttons for the HID. More...
|
|
bool | IsConnected () const |
| Get if the HID is connected. More...
|
|
GenericHID::HIDType | GetType () const |
| Get the type of the HID. More...
|
|
std::string | GetName () const |
| Get the name of the HID. More...
|
|
int | GetAxisType (int axis) const |
| Get the axis type of a joystick axis. More...
|
|
int | GetPort () const |
| Get the port number of the HID. More...
|
|
void | SetOutput (int outputNumber, bool value) |
| Set a single HID output value for the HID. More...
|
|
void | SetOutputs (int value) |
| Set all output values for the HID. More...
|
|
void | SetRumble (RumbleType type, double value) |
| Set the rumble output for the HID. More...
|
|
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.
Only first party controllers from Microsoft are guaranteed to have the correct mapping, and only through the official NI DS. Sim is not guaranteed to have the same mapping, as well as any 3rd party controllers.