class InputConfiguration

Inherits: IScriptExportable

Contains virtual < -> physical key mappings.

Public

Constructors

InputConfiguration

InputConfiguration() = default

Methods

RegisterButton

void RegisterButton(const String &name, ButtonCode buttonCode, ButtonModifier modifiers = ButtonModifier::None, bool repeatable = false)

Registers a new virtual button.

name
Unique name used to access the virtual button.
buttonCode
Physical button the virtual button is triggered by.
modifiers
Modifiers required to be pressed with the physical button to trigger the virtual button.
repeatable
If true, the virtual button events will be sent continually while the physical button is being held.

UnregisterButton

void UnregisterButton(const String &name)

Unregisters a virtual button with the specified name.

Events will no longer be generated for that button.

RegisterAxis

void RegisterAxis(const String &name, const VirtualAxisCreateInformation &createInformation)

Registers a new virtual axis.

name
Unique name used to access the axis.
createInformation
Descriptor structure containing virtual axis creation parameters.

UnregisterAxis

void UnregisterAxis(const String &name)

Unregisters a virtual axis with the specified name.

You will no longer be able to retrieve valid values for that axis.

SetRepeatInterval

void SetRepeatInterval(u64 milliseconds)

Repeat interval for held virtual buttons.

Buttons will be continously triggered in interval increments as long as they button is being held.

GetRepeatInterval

u64 GetRepeatInterval() const

Internal

Methods

GetButtonsInternal

bool GetButtonsInternal(ButtonCode code, u32 modifiers, Vector<VirtualButton> &buttons, Vector<VirtualButtonInformation> &buttonDescriptions) const

Returns data about virtual buttons that are triggered by the specified physical button code and modifier flags.

GetAxisInternal

bool GetAxisInternal(const VirtualAxis &axis, VirtualAxisInformation &axisDescription) const

Retrieves virtual axis descriptor for the provided axis.

Private

Fields

mButtons

Vector<VirtualButtonData>[308] mButtons

mAxes

Vector<VirtualAxisData> mAxes

mRepeatInterval

u64 mRepeatInterval