InputMapper
Summary
Definition
Namespace: SDT4.Managed.Input.Mapper
Assembly: SDT4.Managed.Input.dll
static class InputMapper
Inheritance:
Object ➔ InputMapper
Implements:
Fields
| Name | Type | Description |
|---|---|---|
public static MaxInputId |
Int32 |
Properties
| Name | Type | Description |
|---|---|---|
Methods
public static IInputReceiver RegisterInputReceiver(Int32 inputId, IInputReceiver inputReceiver)
Parameters:
-
inputId(Int32): -
inputReceiver(IInputReceiver):
Returns:
public static Void UnregisterInputReceiver(Int32 inputId, IInputReceiver inputReceiver)
Parameters:
-
inputId(Int32): -
inputReceiver(IInputReceiver):
public static Void BindActionMapping<TEnum>(Int32 inputId, TEnum mapping, KeyCode code, InputModifiers modifier, Boolean registerRepeat, Boolean strictModifier)
Summary: Maps an action binding to a physical keyboard key.
Parameters:
-
inputId(Int32): -
mapping(TEnum): What binding to map -
code(KeyCode): Key input -
modifier(InputModifiers): Modifiers that must be held down for the input to trigger -
registerRepeat(Boolean): Should repeatedly trigger when the key is held down? -
strictModifier(Boolean): Does the binding require exact modifiers? (If this is disabled, inputsCTRL + A andA will both be triggered if the user presses CTRL+A ifstrictModifieris disabled!)
public static Void BindActionMapping<TEnum>(Int32 inputId, TEnum mapping, MouseButton input, InputModifiers modifier, Boolean strictModifier)
Summary: Maps an action binding to a mouse button.
Parameters:
-
inputId(Int32): -
mapping(TEnum): What binding to map -
input(MouseButton): Mouse input -
modifier(InputModifiers): Modifiers that must be held down for the input to trigger -
strictModifier(Boolean): Does the binding require exact modifiers? (If this is disabled, inputsCTRL + A andA will both be triggered if the user presses CTRL+A ifstrictModifieris disabled!)
public static Void BindActionMapping<TEnum>(Int32 inputId, TEnum mapping, GamepadButton input, GamepadIdentifier gamepadIndex, Boolean registerRepeat)
Summary: Maps an action binding to a gamepad button.
Parameters:
-
inputId(Int32): -
mapping(TEnum): What binding to map -
input(GamepadButton): Gamepad input -
gamepadIndex(GamepadIdentifier): What gamepad to use -
registerRepeat(Boolean): Should repeatedly trigger when the button is held down?
public static Void BindActionMapping<TEnum>(Int32 inputId, TEnum mapping, MouseMotionInput input)
Summary:
Maps an action binding to a mouse movement/scroll.
NOTE: This will only trigger upon POSITIVE values! ZERO values will NOT
It is thus recommended to use this solely for things such as event triggers, as opposed to field values
Parameters:
-
inputId(Int32): -
mapping(TEnum): What binding to map -
input(MouseMotionInput): Mouse movement input
public static Void BindCustomActionMapping<TEnum>(Int32 inputId, TEnum mapping, Guid sourceId, String channel, Int32 deviceId)
Summary: Maps a custom button/axis binding from a custom peripheral driver to an action.
Parameters:
-
inputId(Int32): -
mapping(TEnum): What binding to map -
sourceId(Guid): Input mapper GUID. Provided by IRawInputSource -
channel(String): Input mapper channel name. Provided by IRawInputSource -
deviceId(Int32): Input device ID. Typically, if used, to designate multiple physical controllers.
public static Void BindRangeMapping<TEnum>(Int32 inputId, TEnum mapping, KeyCode code, Single value, InputModifiers modifier, Boolean strictModifier)
Summary: Maps an axis range binding to a keyboard key.
Parameters:
-
inputId(Int32): -
mapping(TEnum): What binding to map -
code(KeyCode): Key input -
value(Single): Value of the binding. 1 and -1 are recommended values. -
modifier(InputModifiers): Modifiers that must be held down for the input to trigger -
strictModifier(Boolean): Does the binding require exact modifiers? (If this is disabled, inputsCTRL + A andA will both be triggered if the user presses CTRL+A ifstrictModifieris disabled!)
public static Void BindRangeMapping<TEnum>(Int32 inputId, TEnum mapping, MouseButton input, Single value, InputModifiers modifier, Boolean strictModifier)
Summary: Maps an axis range binding to a mouse button.
Parameters:
-
inputId(Int32): -
mapping(TEnum): What binding to map -
input(MouseButton): Mouse input -
value(Single): Value of the binding. 1 and -1 are recommended values. -
modifier(InputModifiers): Modifiers that must be held down for the input to trigger -
strictModifier(Boolean): Does the binding require exact modifiers? (If this is disabled, inputsCTRL + A andA will both be triggered if the user presses CTRL+A ifstrictModifieris disabled!)
public static Void BindRangeMapping<TEnum>(Int32 inputId, TEnum mapping, GamepadButton input, GamepadIdentifier gamepadIndex, Single value)
Summary: Maps an axis range binding to a digital gamepad button.
Parameters:
-
inputId(Int32): -
mapping(TEnum): What binding to map -
input(GamepadButton): Mouse movement input -
gamepadIndex(GamepadIdentifier): What gamepad to use -
value(Single): Value of the binding. 1 and -1 are recommended values.
public static Void BindRangeMapping<TEnum>(Int32 inputId, TEnum mapping, GamepadAxis input, GamepadIdentifier gamepadIndex, Single scale)
Summary: Maps an axis range binding to an analogue gamepad stick or trigger.
Parameters:
-
inputId(Int32): -
mapping(TEnum): What binding to map -
input(GamepadAxis): Mouse movement input -
gamepadIndex(GamepadIdentifier): What gamepad to use -
scale(Single): Scale of the movement. This acts as a direct multiplier. Recommended to keep at 1
public static Void BindRangeMapping<TEnum>(Int32 inputId, TEnum mapping, MouseMotionInput input, Single sensitivity)
Summary: Maps an axis range binding to continuous mouse movement or scrolling.
Parameters:
-
inputId(Int32): -
mapping(TEnum): What binding to map -
input(MouseMotionInput): Mouse movement input -
sensitivity(Single): Scale of the movement. This acts as a direct multiplier
public static Void BindCustomRangeMapping<TEnum>(Int32 inputId, TEnum mapping, Guid sourceId, String channel, Int32 deviceId, Single scale)
Summary: Maps a custom analog axis to a range binding.
Parameters:
-
inputId(Int32): -
mapping(TEnum): What binding to map -
sourceId(Guid): Input mapper GUID. Provided by IRawInputSource -
channel(String): Input mapper channel name. Provided by IRawInputSource -
deviceId(Int32): Input device ID. Typically, if used, to designate multiple physical controllers. -
scale(Single): Scale of the movement. This acts as a direct multiplier. Recommended to keep at 1
public static Void UnbindActionMapping<TEnum>(Int32 inputId, TEnum mapping, KeyCode code, InputModifiers modifier)
Parameters:
-
inputId(Int32): -
mapping(TEnum): -
code(KeyCode): -
modifier(InputModifiers):
public static Void UnbindActionMapping<TEnum>(Int32 inputId, TEnum mapping, MouseButton input, InputModifiers modifier)
Parameters:
-
inputId(Int32): -
mapping(TEnum): -
input(MouseButton): -
modifier(InputModifiers):
public static Void UnbindActionMapping<TEnum>(Int32 inputId, TEnum mapping, GamepadButton input, GamepadIdentifier gamepadIndex)
Parameters:
-
inputId(Int32): -
mapping(TEnum): -
input(GamepadButton): -
gamepadIndex(GamepadIdentifier):
public static Void UnbindActionMapping<TEnum>(Int32 inputId, TEnum mapping, MouseMotionInput input)
Parameters:
-
inputId(Int32): -
mapping(TEnum): -
input(MouseMotionInput):
public static Void UnbindCustomActionMapping<TEnum>(Int32 inputId, TEnum mapping, Guid sourceId, String channel, Int32 deviceId)
Parameters:
public static Void UnbindRangeMapping<TEnum>(Int32 inputId, TEnum mapping, KeyCode code, InputModifiers modifier)
Parameters:
-
inputId(Int32): -
mapping(TEnum): -
code(KeyCode): -
modifier(InputModifiers):
public static Void UnbindRangeMapping<TEnum>(Int32 inputId, TEnum mapping, MouseButton input, InputModifiers modifier)
Parameters:
-
inputId(Int32): -
mapping(TEnum): -
input(MouseButton): -
modifier(InputModifiers):
public static Void UnbindRangeMapping<TEnum>(Int32 inputId, TEnum mapping, GamepadButton input, GamepadIdentifier gamepadIndex)
Parameters:
-
inputId(Int32): -
mapping(TEnum): -
input(GamepadButton): -
gamepadIndex(GamepadIdentifier):
public static Void UnbindRangeMapping<TEnum>(Int32 inputId, TEnum mapping, GamepadAxis input, GamepadIdentifier gamepadIndex)
Parameters:
-
inputId(Int32): -
mapping(TEnum): -
input(GamepadAxis): -
gamepadIndex(GamepadIdentifier):
public static Void UnbindRangeMapping<TEnum>(Int32 inputId, TEnum mapping, MouseMotionInput input)
Parameters:
-
inputId(Int32): -
mapping(TEnum): -
input(MouseMotionInput):
public static Void UnbindCustomRangeMapping<TEnum>(Int32 inputId, TEnum mapping, Guid sourceId, String channel, Int32 deviceId)
Parameters: