From 3ef5f839ffb8280714f0403ac9a7eaec446753f8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ha=CC=8Akan=20Sidenvall?= Date: Mon, 2 Dec 2024 15:19:13 +0100 Subject: [PATCH] DOCS: Added missing documentation to XInputController.DeviceSubType --- .../Plugins/XInput/XInputController.cs | 138 +++++++++++++++++- 1 file changed, 137 insertions(+), 1 deletion(-) diff --git a/Packages/com.unity.inputsystem/InputSystem/Plugins/XInput/XInputController.cs b/Packages/com.unity.inputsystem/InputSystem/Plugins/XInput/XInputController.cs index fcaa117956..870ae9a7d5 100644 --- a/Packages/com.unity.inputsystem/InputSystem/Plugins/XInput/XInputController.cs +++ b/Packages/com.unity.inputsystem/InputSystem/Plugins/XInput/XInputController.cs @@ -148,20 +148,156 @@ internal enum DeviceType /// Controller subtype enumeration in SubType field of XINPUT_CAPABILITIES. /// /// - /// See MSDN. + /// Provides additional detail about the underlying hardware being used and how it maps physical to logical + /// controls. + /// + /// See MSDN + /// for additional details. /// public enum DeviceSubType { + /// + /// The controller type is unknown. + /// Unknown = 0x00, + + /// + /// Gamepad controller. + /// + /// + /// Includes left and right stick as and , + /// left and right trigger as and , + /// directional pad as , + /// and all standard buttons (, , + /// , , + /// , , + /// , , + /// , ). + /// Gamepad = 0x01, + + /// + /// Racing wheel controller. + /// + /// + /// x-axis reports the wheel rotation, + /// is the acceleration pedal, and + /// Left Trigger is the brake pedal. + /// Includes Directional Pad as and most standard buttons + /// (, , + /// , , + /// , , + /// , ). + /// and are optional. + /// Wheel = 0x02, + + /// + /// Arcade stick controller. + /// + /// + /// Includes a Digital Stick that reports as a (up, down, left, right), + /// and most standard buttons (, , + /// , , + /// , ). + /// The and are implemented as digital + /// buttons and report either 0.0f or 1.0f. + /// The , and + /// , are optional. + /// ArcadeStick = 0x03, + + /// + /// Flight stick controller. + /// + /// + /// Includes a pitch and roll stick that reports as the , a POV Hat which + /// reports as the , a rudder (handle twist or rocker) that reports as + /// , and a throttle control as the . + /// Includes support for a primary weapon (), secondary weapon + /// (), and other standard buttons (, + /// , , + /// ). + /// , and + /// , are optional. + /// FlightStick = 0x04, + + /// + /// Dance pad controller. + /// + /// + /// Includes the and standard buttons (, + /// , , + /// ) on the pad, plus and + /// . + /// DancePad = 0x05, + + /// + /// Guitar controller. + /// + /// + /// The strum bar maps to (up and down), and the frets are assigned to + /// (green), (red), + /// (yellow), (blue), and + /// (orange). + /// y-axis is associated with a vertical orientation sensor; + /// x-axis is the whammy bar. + /// Includes support for , , + /// (left, right). + /// (pickup selector), , + /// , (fret modifier), + /// are optional. + /// Guitar = 0x06, + + /// + /// Alternate guitar controller. + /// + /// + /// Similar to but supports a larger range of movement for the vertical orientation + /// sensor. + /// GuitarAlternate = 0x07, + + /// + /// Drum kit controller. + /// + /// + /// The drum pads are assigned to buttons: for green (Floor Tom), + /// for red (Snare Drum), + /// for blue (Low Tom), + /// for yellow (High Tom), + /// and for the pedal (Bass Drum). + /// Includes , , and + /// . , + /// , and are optional. + /// DrumKit = 0x08, + + /// + /// Bass guitar controller. + /// + /// + /// Identical to , with the distinct subtype to simplify setup. + /// GuitarBass = 0x0B, + + /// + /// Arcade pad controller. + /// + /// + /// Includes Directional Pad and most standard buttons + /// (, , + /// , , + /// , , + /// , ). + /// The , are implemented as digital + /// buttons and report either 0.0f or 1.0f. + /// , , + /// and are optional. + /// ArcadePad = 0x13 }