Enum DeviceCapability
Possible capabilities of a hardware device.
This differs from Controller
These capabilities more or less mirror the union of possible capabilities provided by DirectInput, XInput, and evdev. Hence the semantics of each enum differ depending on the driver from which the instance was enumerated from.
However, Snowflake only supports unique mappings up to the set defined by Stone, so in practice, the full set of capabilities will not be able to be mapped to a controller.
Button0 and such do not necessary map directly to Button0.
Commonly, Button0 map instead map to Button
Axes have entries that are triplicated with the following semantics.
* Positive means the partition of the axis from 0.50 to 1.00, mapped to the interval [0, 1], that is 0 approaches 1 as 0.50 approaches 0.
* Negative means the partition of the axis from 0.00 to 0.50, mapped to the interval [-1, 0], that is, 0 approaches -1 as 0.50 approaches 0.00
* Without either qualifier means the entire axis from 0.00 to 1.00, mapped to the interval [-1, 1], that is -1 approaches 1 as 0.00 approaches 1.00.
An enumerated axis enumerated may have all three capabilities enumerated, particularly if it is an analog stick. Some drivers may not have support for all three capabilities, such as XInput triggers only exposing [0.00, 1.00] for triggers.
Mouse cursor capabilities are also triplicated with the same semantics as axis, except for absolute values. Relative mouse movement is mapped to Axis0 by convention.
Namespace: Snowflake.Input.Device
Assembly: Snowflake.Framework.Primitives.dll
Syntax
public enum DeviceCapability
Fields
Name | Description |
---|---|
Axis0 | Axis 0 |
Axis0Negative | Axis 0 Negative |
Axis0Positive | Axis 0 Positive |
Axis1 | Axis 1 |
Axis1Negative | Axis 1 Negative |
Axis1Positive | Axis 1 Positive |
Axis2 | Axis 2 |
Axis2Negative | Axis 2 Negative |
Axis2Positive | Axis 2 Positive |
Axis3 | Axis 3 |
Axis3Negative | Axis 3 Negative |
Axis3Positive | Axis 3 Positive |
Axis4 | Axis 4 |
Axis4Negative | Axis 4 Negative |
Axis4Positive | Axis 4 Positive |
Axis5 | Axis 5 |
Axis5Negative | Axis 5 Negative |
Axis5Positive | Axis 5 Positive |
Axis6 | Axis 6 |
Axis6Negative | Axis 6 Negative |
Axis6Positive | Axis 6 Positive |
Axis7 | Axis 7 |
Axis7Negative | Axis 7 Negative |
Axis7Positive | Axis 7 Positive |
Button0 | Button 0 |
Button1 | Button 1 |
Button10 | Button 10 |
Button100 | Button 100 |
Button101 | Button 101 |
Button102 | Button 102 |
Button103 | Button 103 |
Button104 | Button 104 |
Button105 | Button 105 |
Button106 | Button 106 |
Button107 | Button 107 |
Button108 | Button 108 |
Button109 | Button 109 |
Button11 | Button 11 |
Button110 | Button 110 |
Button111 | Button 111 |
Button112 | Button 112 |
Button113 | Button 113 |
Button114 | Button 114 |
Button115 | Button 115 |
Button116 | Button 116 |
Button117 | Button 117 |
Button118 | Button 118 |
Button119 | Button 119 |
Button12 | Button 12 |
Button120 | Button 120 |
Button121 | Button 121 |
Button122 | Button 122 |
Button123 | Button 123 |
Button124 | Button 124 |
Button125 | Button 125 |
Button126 | Button 126 |
Button127 | Button 127 |
Button13 | Button 13 |
Button14 | Button 14 |
Button15 | Button 15 |
Button16 | Button 16 |
Button17 | Button 17 |
Button18 | Button 18 |
Button19 | Button 19 |
Button2 | Button 2 |
Button20 | Button 20 |
Button21 | Button 21 |
Button22 | Button 22 |
Button23 | Button 23 |
Button24 | Button 24 |
Button25 | Button 25 |
Button26 | Button 26 |
Button27 | Button 27 |
Button28 | Button 28 |
Button29 | Button 29 |
Button3 | Button 3 |
Button30 | Button 30 |
Button31 | Button 31 |
Button32 | Button 32 |
Button33 | Button 33 |
Button34 | Button 34 |
Button35 | Button 35 |
Button36 | Button 36 |
Button37 | Button 37 |
Button38 | Button 38 |
Button39 | Button 39 |
Button4 | Button 4 |
Button40 | Button 40 |
Button41 | Button 41 |
Button42 | Button 42 |
Button43 | Button 43 |
Button44 | Button 44 |
Button45 | Button 45 |
Button46 | Button 46 |
Button47 | Button 47 |
Button48 | Button 48 |
Button49 | Button 49 |
Button5 | Button 5 |
Button50 | Button 50 |
Button51 | Button 51 |
Button52 | Button 52 |
Button53 | Button 53 |
Button54 | Button 54 |
Button55 | Button 55 |
Button56 | Button 56 |
Button57 | Button 57 |
Button58 | Button 58 |
Button59 | Button 59 |
Button6 | Button 6 |
Button60 | Button 60 |
Button61 | Button 61 |
Button62 | Button 62 |
Button63 | Button 63 |
Button64 | Button 64 |
Button65 | Button 65 |
Button66 | Button 66 |
Button67 | Button 67 |
Button68 | Button 68 |
Button69 | Button 69 |
Button7 | Button 7 |
Button70 | Button 70 |
Button71 | Button 71 |
Button72 | Button 72 |
Button73 | Button 73 |
Button74 | Button 74 |
Button75 | Button 75 |
Button76 | Button 76 |
Button77 | Button 77 |
Button78 | Button 78 |
Button79 | Button 79 |
Button8 | Button 8 |
Button80 | Button 80 |
Button81 | Button 81 |
Button82 | Button 82 |
Button83 | Button 83 |
Button84 | Button 84 |
Button85 | Button 85 |
Button86 | Button 86 |
Button87 | Button 87 |
Button88 | Button 88 |
Button89 | Button 89 |
Button9 | Button 9 |
Button90 | Button 90 |
Button91 | Button 91 |
Button92 | Button 92 |
Button93 | Button 93 |
Button94 | Button 94 |
Button95 | Button 95 |
Button96 | Button 96 |
Button97 | Button 97 |
Button98 | Button 98 |
Button99 | Button 99 |
CursorX | Absolute Cursor X |
CursorXNegative | Absolute Cursor X Negative |
CursorXPositive | Absolute Cursor X Positive |
CursorY | Absolute Cursor Y |
CursorYNegative | Absolute Cursor Y Negative |
CursorYPositive | Absolute Cursor Y Positive |
Hat0E | Hat 0 East |
Hat0N | Hat 0 North |
Hat0S | Hat 0 South |
Hat0W | Hat 0 West |
Hat1E | Hat 1 East |
Hat1N | Hat 1 North |
Hat1S | Hat 1 South |
Hat1W | Hat 1 West |
Hat2E | Hat 2 East |
Hat2N | Hat 2 North |
Hat2S | Hat 2 South |
Hat2W | Hat 2 West |
Hat3E | Hat 3 East |
Hat3N | Hat 3 North |
Hat3S | Hat 3 South |
Hat3W | Hat 3 West |
Key0 | The 0 Key |
Key1 | The 1 Key |
Key2 | The 2 Key |
Key3 | The 3 Key |
Key4 | The 4 Key |
Key5 | The 5 Key |
Key6 | The 6 Key |
Key7 | The 7 Key |
Key8 | The 8 Key |
Key9 | The 9 Key |
KeyA | The A Key |
KeyAlt | The Alt Key |
KeyB | The B Key |
KeyBackslash | The Backslash () Key |
KeyBackspace | The Backspace Key |
KeyBracketLeft | The Left Bracket ([)Key |
KeyBracketRight | The Right Brackey (]) Key |
KeyC | The C Key |
KeyComma | The Comma (:) Key |
KeyCtrl | The Ctrl Key |
KeyD | The D Key |
KeyDelete | The Delete Key |
KeyDown | The Down Key |
KeyE | The E Key |
KeyEnd | The End Key |
KeyEnter | The Enter Key |
KeyEquals | The Equals (=) Key |
KeyEscape | The Escape Key |
KeyF | The F Key |
KeyF1 | The F1 Key |
KeyF10 | The F10 Key |
KeyF11 | The F11 Key |
KeyF12 | The F12 Key |
KeyF2 | The F2 Key |
KeyF3 | The F3 Key |
KeyF4 | The F4 Key |
KeyF5 | The F5 Key |
KeyF6 | The F6 Key |
KeyF7 | The F7 Key |
KeyF8 | The F8 Key |
KeyF9 | The F9 Key |
KeyG | The G Key |
KeyH | The H Key |
KeyHome | The Home Key |
KeyI | The I Key |
KeyInsert | The Insert Key |
KeyJ | The J Key |
KeyK | The K Key |
KeyL | The L Key |
KeyLeft | The Left Key |
KeyM | The M Key |
KeyMinus | The Minus (-) Key |
KeyN | The N Key |
KeyNum0 | The Num0 Key |
KeyNum1 | The Num1 Key |
KeyNum2 | The Num2 Key |
KeyNum3 | The Num3 Key |
KeyNum4 | The Num4 Key |
KeyNum5 | The Num5 Key |
KeyNum6 | The Num6 Key |
KeyNum7 | The Num7 Key |
KeyNum8 | The Num8 Key |
KeyNum9 | The Num9 Key |
KeyNumEnter | The NumEnter Key |
KeyNumMinus | The NumMinus Key |
KeyNumPeriod | The NumPeriod Key |
KeyNumPlus | The NumPlus Key |
KeyO | The O Key |
KeyP | The P Key |
KeyPageDown | The PageDown Key |
KeyPageUp | The PageUp Key |
KeyPeriod | The Period (.) Key |
KeyQ | The Q Key |
KeyQuote | The Quote (') Key |
KeyR | The R Key |
KeyRight | The Right Key |
KeyRightAlt | The Right Alt Key |
KeyRightCtrl | The Right Ctrl Key |
KeyRightShift | The Right Shift Key |
KeyS | The S Key |
KeySemicolon | The Semicolon (;) Key |
KeyShift | The Shift Key |
KeySlash | The Slash (/) Key |
KeySpacebar | The Spacebar Key |
KeyT | The T Key |
KeyTab | The Tab Key |
KeyTilde | The Tilde (~) Key |
KeyU | The U Key |
KeyUp | The Up Key |
KeyV | The V Key |
KeyW | The W Key |
KeyX | The X Key |
KeyY | The Y Key |
KeyZ | The Z Key |
Mouse0 | Left mouse button |
Mouse1 | Right mouse button |
Mouse2 | Middle mouse button |
Mouse3 | Side forward mouse button |
Mouse4 | Side backward mouse button |
None | No capability. |
Rumble0 | Left rumble motor |
Rumble1 | Right rumble motor |