Various extension methods for InputControl. Mostly low-level routines.
Inheritance
System.Object
InputControlExtensions
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 InputControlExtensions
Methods
Declaration
public static bool CheckStateIsAtDefault(this InputControl control)
Parameters
Returns
| Type |
Description |
| System.Boolean |
|
Check if the given state corresponds to the default state of the control.
Declaration
public static bool CheckStateIsAtDefault(this InputControl control, void *statePtr, void *maskPtr = null)
Parameters
| Type |
Name |
Description |
| InputControl |
control |
|
| System.Void* |
statePtr |
Pointer to a state buffer containing the stateBlock for control.
|
| System.Void* |
maskPtr |
If not null, only bits set to true in the buffer will be taken into account. This can be used
to mask out noise.
|
Returns
| Type |
Description |
| System.Boolean |
True if the control/device is in its default state.
|
Declaration
public static bool CheckStateIsAtDefaultIgnoringNoise(this InputControl control)
Parameters
Returns
| Type |
Description |
| System.Boolean |
|
Declaration
public static bool CheckStateIsAtDefaultIgnoringNoise(this InputControl control, void *statePtr)
Parameters
| Type |
Name |
Description |
| InputControl |
control |
|
| System.Void* |
statePtr |
|
Returns
| Type |
Description |
| System.Boolean |
|
Declaration
public static bool CompareState(this InputControl control, void *statePtr, void *maskPtr = null)
Parameters
| Type |
Name |
Description |
| InputControl |
control |
|
| System.Void* |
statePtr |
|
| System.Void* |
maskPtr |
|
Returns
| Type |
Description |
| System.Boolean |
|
Compare the control's current state to the state stored in statePtr.
Declaration
public static bool CompareStateIgnoringNoise(this InputControl control, void *statePtr)
Parameters
| Type |
Name |
Description |
| InputControl |
control |
|
| System.Void* |
statePtr |
State memory containing the control's .
|
Returns
| Type |
Description |
| System.Boolean |
True if
|
Declaration
public static void *GetStatePtrFromStateEvent(this InputControl control, InputEventPtr eventPtr)
Parameters
| Type |
Name |
Description |
| InputControl |
control |
|
| InputEventPtr |
eventPtr |
|
Returns
| Type |
Description |
| System.Void* |
|
Declaration
public static bool HasValueChangeInEvent(this InputControl control, InputEventPtr eventPtr)
Parameters
| Type |
Name |
Description |
| InputControl |
control |
|
| InputEventPtr |
eventPtr |
|
Returns
| Type |
Description |
| System.Boolean |
|
Return true if the actual value
Declaration
public static bool HasValueChangeInState(this InputControl control, void *statePtr)
Parameters
| Type |
Name |
Description |
| InputControl |
control |
|
| System.Void* |
statePtr |
|
Returns
| Type |
Description |
| System.Boolean |
|
Read the control's default value and return it as an object.
Declaration
public static object ReadDefaultValueAsObject(this InputControl control)
Parameters
| Type |
Name |
Description |
| InputControl |
control |
Control to read default value from.
|
Returns
| Type |
Description |
| System.Object |
|
UnityEngine.Experimental.Input.InputControl.hasDefaultValue
Declaration
public static TValue ReadUnprocessedValueFromEvent<TValue>(this InputControl<TValue> control, InputEventPtr eventPtr)where TValue : struct
Parameters
| Type |
Name |
Description |
| InputControl<TValue> |
control |
|
| InputEventPtr |
eventPtr |
|
Returns
Type Parameters
Declaration
public static bool ReadUnprocessedValueFromEvent<TValue>(this InputControl<TValue> control, InputEventPtr inputEvent, out TValue value)where TValue : struct
Parameters
| Type |
Name |
Description |
| InputControl<TValue> |
control |
|
| InputEventPtr |
inputEvent |
|
| TValue |
value |
|
Returns
| Type |
Description |
| System.Boolean |
|
Type Parameters
Read the current value of the control and return it as an object.
Declaration
public static object ReadValueAsObject(this InputControl control)
Parameters
Returns
| Type |
Description |
| System.Object |
|
Read the value of the given control from an event.
Declaration
public static bool ReadValueFromEvent<TValue>(this InputControl<TValue> control, InputEventPtr inputEvent, out TValue value)where TValue : struct
Parameters
| Type |
Name |
Description |
| InputControl<TValue> |
control |
|
| InputEventPtr |
inputEvent |
Input event. This must be a or .
Note that in the case of a , the control may not actually be part of the event. In this
case, the method returns false and stores default(TValue) in value.
|
| TValue |
value |
Variable that receives the control value.
|
Returns
| Type |
Description |
| System.Boolean |
True if the value has been successfully read from the event, false otherwise.
|
Type Parameters
Read the current, processed value of the control and store it into the given memory buffer.
Declaration
public static void ReadValueIntoBuffer(this InputControl control, void *buffer, int bufferSize)
Parameters
| Type |
Name |
Description |
| InputControl |
control |
|
| System.Void* |
buffer |
Buffer to store value in. Note that the value is not stored with the offset
found in of the control's stateBlock. It will
be stored directly at the given address.
|
| System.Int32 |
bufferSize |
Size of the memory available at buffer in bytes. Has to be
at least valueSizeInBytes. If the size is smaller, nothing will be written to the buffer.
|
Declaration
public static void WriteValueFromObjectIntoEvent(this InputControl control, InputEventPtr eventPtr, object value)
Parameters
| Type |
Name |
Description |
| InputControl |
control |
|
| InputEventPtr |
eventPtr |
|
| System.Object |
value |
|
Declaration
public static void WriteValueIntoEvent<TValue>(this InputControl control, TValue value, InputEventPtr eventPtr)where TValue : struct
Parameters
| Type |
Name |
Description |
| InputControl |
control |
|
| TValue |
value |
|
| InputEventPtr |
eventPtr |
|
Type Parameters
Declaration
public static void WriteValueIntoEvent<TValue>(this InputControl<TValue> control, TValue value, InputEventPtr eventPtr)where TValue : struct
Parameters
| Type |
Name |
Description |
| InputControl<TValue> |
control |
|
| TValue |
value |
|
| InputEventPtr |
eventPtr |
|
Type Parameters
Write the control's current value into statePtr.
Declaration
public static void WriteValueIntoState(this InputControl control, void *statePtr)
Parameters
| Type |
Name |
Description |
| InputControl |
control |
Control to read the current value from and to store state for in statePtr.
|
| System.Void* |
statePtr |
State to receive the control's value in its respective stateBlock.
|
Declaration
public static void WriteValueIntoState<TValue>(this InputControl control, TValue value, void *statePtr)where TValue : struct
Parameters
| Type |
Name |
Description |
| InputControl |
control |
|
| TValue |
value |
|
| System.Void* |
statePtr |
|
Type Parameters
Declaration
public static void WriteValueIntoState<TValue>(this InputControl<TValue> control, TValue value, void *statePtr)where TValue : struct
Parameters
| Type |
Name |
Description |
| InputControl<TValue> |
control |
|
| TValue |
value |
|
| System.Void* |
statePtr |
|
Type Parameters
Declaration
public static void WriteValueIntoState<TValue>(this InputControl<TValue> control, void *statePtr)where TValue : struct
Parameters
| Type |
Name |
Description |
| InputControl<TValue> |
control |
|
| System.Void* |
statePtr |
|
Type Parameters
Declaration
public static void WriteValueIntoState<TValue, TState>(this InputControl<TValue> control, TValue value, ref TState state)where TValue : struct where TState : struct, IInputStateTypeInfo
Parameters
| Type |
Name |
Description |
| InputControl<TValue> |
control |
|
| TValue |
value |
Value for control to write into state.
|
| TState |
state |
|
Type Parameters
| Name |
Description |
| TValue |
|
| TState |
|