Open 3D Engine BarrierInput Gem API Reference 23.10.0
O3DE is an open-source, fully-featured, high-fidelity, modular 3D engine for building games and simulations, available to every industry.
BarrierInput::RawInputNotificationsBarrier Class Reference

#include <RawInputNotificationBus_Barrier.h>

Inherits AZ::EBusTraits.

Public Member Functions

virtual ~RawInputNotificationsBarrier ()=default
 Default destructor.
 
virtual void OnRawMouseButtonDownEvent (uint32_t buttonIndex)
 
virtual void OnRawMouseButtonUpEvent (uint32_t buttonIndex)
 
virtual void OnRawMouseMovementEvent (float movementX, float movementY)
 
virtual void OnRawMousePositionEvent (float positionX, float positionY)
 
virtual void OnRawKeyboardKeyDownEvent (uint32_t scanCode, ModifierMask activeModifiers)
 
virtual void OnRawKeyboardKeyUpEvent (uint32_t scanCode, ModifierMask activeModifiers)
 
virtual void OnRawKeyboardKeyRepeatEvent (uint32_t scanCode, ModifierMask activeModifiers)
 
virtual void OnRawClipboardEvent (const char *clipboardContents)
 

Static Public Attributes

static const AZ::EBusAddressPolicy AddressPolicy = AZ::EBusAddressPolicy::Single
 EBus Trait: raw input notifications are addressed to a single address.
 
static const AZ::EBusHandlerPolicy HandlerPolicy = AZ::EBusHandlerPolicy::Multiple
 EBus Trait: raw input notifications can be handled by multiple listeners.
 

Detailed Description

EBus interface used to listen for raw Barrier input as broadcast by the BarrierClient.

It's possible to receive multiple events per button/key per frame, and it's very likely that Barrier input events will not be dispatched from the main thread, so care should be taken to ensure thread safety when implementing event handlers that connect to this Barrier event bus.

This EBus is intended primarily for the BarrierClient to send raw input to Barrier devices. 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 Barrier events.

Member Function Documentation

◆ OnRawClipboardEvent()

virtual void BarrierInput::RawInputNotificationsBarrier::OnRawClipboardEvent ( const char *  clipboardContents)
inlinevirtual

Process raw clipboard events (assumed to be dispatched from any thread)

Parameters
[in]clipboardContentsThe contents of the clipboard

◆ OnRawKeyboardKeyDownEvent()

virtual void BarrierInput::RawInputNotificationsBarrier::OnRawKeyboardKeyDownEvent ( uint32_t  scanCode,
ModifierMask  activeModifiers 
)
inlinevirtual

Process raw keyboard key down events (assumed to be dispatched from any thread)

Parameters
[in]scanCodeThe scan code of the key that was pressed down
[in]activeModifiersThe bit mask of currently active modifier keys

◆ OnRawKeyboardKeyRepeatEvent()

virtual void BarrierInput::RawInputNotificationsBarrier::OnRawKeyboardKeyRepeatEvent ( uint32_t  scanCode,
ModifierMask  activeModifiers 
)
inlinevirtual

Process raw keyboard key repeat events (assumed to be dispatched from any thread)

Parameters
[in]scanCodeThe scan code of the key that was repeatedly held down
[in]activeModifiersThe bit mask of currently active modifier keys

◆ OnRawKeyboardKeyUpEvent()

virtual void BarrierInput::RawInputNotificationsBarrier::OnRawKeyboardKeyUpEvent ( uint32_t  scanCode,
ModifierMask  activeModifiers 
)
inlinevirtual

Process raw keyboard key up events (assumed to be dispatched from any thread)

Parameters
[in]scanCodeThe scan code of the key that was released up
[in]activeModifiersThe bit mask of currently active modifier keys

◆ OnRawMouseButtonDownEvent()

virtual void BarrierInput::RawInputNotificationsBarrier::OnRawMouseButtonDownEvent ( uint32_t  buttonIndex)
inlinevirtual

Process raw mouse button down events (assumed to be dispatched from any thread)

Parameters
[in]buttonIndexThe index of the button that was pressed down

◆ OnRawMouseButtonUpEvent()

virtual void BarrierInput::RawInputNotificationsBarrier::OnRawMouseButtonUpEvent ( uint32_t  buttonIndex)
inlinevirtual

Process raw mouse button up events (assumed to be dispatched from any thread)

Parameters
[in]buttonIndexThe index of the button that was released up

◆ OnRawMouseMovementEvent()

virtual void BarrierInput::RawInputNotificationsBarrier::OnRawMouseMovementEvent ( float  movementX,
float  movementY 
)
inlinevirtual

Process raw mouse movement events (assumed to be dispatched from any thread)

Parameters
[in]movementXThe x movement of the mouse
[in]movementYThe y movement of the mouse

◆ OnRawMousePositionEvent()

virtual void BarrierInput::RawInputNotificationsBarrier::OnRawMousePositionEvent ( float  positionX,
float  positionY 
)
inlinevirtual

Process raw mouse position events (assumed to be dispatched from any thread)

Parameters
[in]positionXThe x position of the mouse
[in]positionYThe y position of the mouse

The documentation for this class was generated from the following file: