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 |
|