Struct InputEventListener
Wraps around mechanisms for listening in on the Input
Implements
Namespace: UnityEngine .InputSystem .LowLevel
Assembly: Unity.InputSystem.dll
Syntax
public struct InputEventListener : IObservable<InputEventPtr>
Remarks
This struct can be used to add (operator +(Input
Alternatively, it can be used as an IObservable
to Subscribe(IObserver<Input
InputSystem.onEvent
.ForDevice(Mouse.current)
.Call(evt =>
{
foreach (var control in evt.EnumerateChangedControls())
Debug.Log($"Control {control} on mouse has changed value");
});
Methods
Subscribe(IObserver<InputEventPtr>)
Subscribe an observer to the event pump.
Declaration
public IDisposable Subscribe(IObserver<InputEventPtr> observer)
Parameters
Type | Name | Description |
---|---|---|
IObserver<Input |
observer | Observer to be notified for each event. |
Returns
Type | Description |
---|---|
IDisposable | A handle to dispose of the subscription. |
Remarks
The easiest way to subscribe is via the extension methods in Observable.
// Subscribe.
var subscription = InputSystem.onEvent.Call(e => Debug.Log("Event"));
// Unsubscribe.
subscription.Dispose();
See Also
Operators
operator +(InputEventListener, Action<InputEventPtr, InputDevice>)
Add a delegate to be called for each Input
Declaration
public static InputEventListener operator +(InputEventListener _, Action<InputEventPtr, InputDevice> callback)
Parameters
Type | Name | Description |
---|---|---|
Input |
_ | |
Action<Input |
callback | A callback to call for each event. |
Returns
Type | Description |
---|---|
Input |
The same listener instance. |
Remarks
InputSystem.onEvent +=
(eventPtr, device) =>
{
Debug.Log($"Event for {device}");
};
Exceptions
Type | Condition |
---|---|
Argument |
|
See Also
operator -(InputEventListener, Action<InputEventPtr, InputDevice>)
Remove a delegate from Input
Declaration
public static InputEventListener operator -(InputEventListener _, Action<InputEventPtr, InputDevice> callback)
Parameters
Type | Name | Description |
---|---|---|
Input |
_ | |
Action<Input |
callback | A callback that was previously installed on on |
Returns
Type | Description |
---|---|
Input |
The same listener instance. |
Remarks
InputSystem.onEvent -= myDelegate;
Exceptions
Type | Condition |
---|---|
Argument |
|