Functions to working with control path specs (like "/gamepad/*stick").
Inheritance
System.Object
InputControlPath
Inherited Members
System.Object.ToString()
System.Object.Equals(System.Object)
System.Object.Equals(System.Object, System.Object)
System.Object.ReferenceEquals(System.Object, System.Object)
System.Object.GetHashCode()
System.Object.GetType()
System.Object.MemberwiseClone()
public static class InputControlPath
Fields
Declaration
public const string kDoubleWildcard = "**"
Field Value
Type |
Description |
System.String |
|
Declaration
public const char kSeparator = '/'
Field Value
Type |
Description |
System.Char |
|
Declaration
public const string kWildcard = "*"
Field Value
Type |
Description |
System.String |
|
Methods
Declaration
public static string Combine(InputControl parent, string path)
Parameters
Type |
Name |
Description |
InputControl |
parent |
|
System.String |
path |
|
Returns
Type |
Description |
System.String |
|
Declaration
public static bool Matches(string expected, InputControl control)
Parameters
Type |
Name |
Description |
System.String |
expected |
|
InputControl |
control |
|
Returns
Type |
Description |
System.Boolean |
|
Declaration
public static bool MatchesPrefix(string expected, InputControl control)
Parameters
Type |
Name |
Description |
System.String |
expected |
|
InputControl |
control |
|
Returns
Type |
Description |
System.Boolean |
|
Create a human readable string from the given control path.
Declaration
public static string ToHumanReadableString(string path)
Parameters
Type |
Name |
Description |
System.String |
path |
A control path such as "<XRController>{LeftHand}/position".
|
Returns
Type |
Description |
System.String |
A string such as "Gamepad leftStick/x".
|
Declaration
public static InputControl TryFindChild(InputControl control, string path, int indexInPath = 0)
Parameters
Type |
Name |
Description |
InputControl |
control |
|
System.String |
path |
|
System.Int32 |
indexInPath |
|
Returns
Declaration
public static TControl TryFindChild<TControl>(InputControl control, string path, int indexInPath = 0)where TControl : InputControl
Parameters
Type |
Name |
Description |
InputControl |
control |
|
System.String |
path |
|
System.Int32 |
indexInPath |
|
Returns
Type |
Description |
TControl |
|
Type Parameters
Name |
Description |
TControl |
|
Declaration
public static InputControl TryFindControl(InputControl control, string path, int indexInPath = 0)
Parameters
Type |
Name |
Description |
InputControl |
control |
|
System.String |
path |
|
System.Int32 |
indexInPath |
|
Returns
Return the first control that matches the given path.
Declaration
public static TControl TryFindControl<TControl>(InputControl control, string path, int indexInPath = 0)where TControl : InputControl
Parameters
Type |
Name |
Description |
InputControl |
control |
|
System.String |
path |
|
System.Int32 |
indexInPath |
|
Returns
Type |
Description |
TControl |
|
Type Parameters
Name |
Description |
TControl |
|
Declaration
public static string TryGetControlLayout(string path)
Parameters
Type |
Name |
Description |
System.String |
path |
|
Returns
Type |
Description |
System.String |
|
From the given control path, try to determine the device layout being used.
Declaration
public static string TryGetDeviceLayout(string path)
Parameters
Type |
Name |
Description |
System.String |
path |
A control path (like "/<gamepad>/leftStick")
|
Returns
Type |
Description |
System.String |
The name of the device layout used by the given control path or null
if the path does not specify a device layout or does so in a way that is not
supported by the function.
|
InputControlPath.TryGetDeviceLayout("/<gamepad>/leftStick"); // Returns "gamepad".
InputControlPath.TryGetDeviceLayout("/*/leftStick"); // Returns "*".
InputControlPath.TryGetDeviceLayout("/gamepad/leftStick"); // Returns null. "gamepad" is a device name here.