#include <RawInputNotificationBus_Windows.h>
Inherits AZ::EBusTraits.
Public Member Functions | |
virtual | ~RawInputNotificationsWindows ()=default |
Default destructor. | |
virtual void | OnRawInputEvent (const RAWINPUT &) |
virtual void | OnRawInputDeviceChangeEvent () |
Process raw input device connection events (assumed to be dispatched on the main thread) | |
virtual void | OnRawInputCodeUnitUTF16Event (uint16_t) |
EBus interface used to listen for raw Windows input events sent by the system. Applications that want RawInput events to be processed by the AzFramework input system must broadcast all WM_INPUT events received by the system's WndProc, which is the lowest level we can get input.
It's possible to receive multiple events per button/key per frame, and (depending on how the Windows event loop is pumped) it is also possible that events could be sent from any thread, however it is assumed they will always be sent from the WndProc function on the main thread.
This EBus is intended primarily for the AzFramework input system to process Windows events. Most systems that need to process input should use the generic AzFramework input interfaces, but if necessary it is perfectly valid to connect directly to this EBus for Windows events.
|
inlinevirtual |
Process raw WM_CHAR events (assumed to be dispatched on the main thread)
[in] | codeUnitUTF16 | The UTF16 unicode code-unit. Note that this may not correspond directly to a single UTF16 code-point (or character); each individual event may be part of a two code-unit 'surrogate pair' that together defines a single UTF16 code-point. |
|
inlinevirtual |
Process raw input events (assumed to be dispatched on the main thread)
[in] | rawInput | The raw input data |