Open 3D Engine AzFramework 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.
AzFramework::InputDeviceVirtualKeyboard Class Reference

#include <InputDeviceVirtualKeyboard.h>

Inherits AzFramework::InputDevice, and InputTextEntryRequestBus::Handler.

Classes

struct  Command
 
class  Implementation
 Base class for platform specific implementations of virtual keyboard input devices. More...
 

Public Types

using ImplementationFactory = Implementation *(InputDeviceVirtualKeyboard &)
 Alias for the function type used to create a custom implementation for this input device.
 

Public Member Functions

 AZ_CLASS_ALLOCATOR (InputDeviceVirtualKeyboard, AZ::SystemAllocator)
 
 AZ_RTTI (InputDeviceVirtualKeyboard, "{85BA81F4-EB74-4CFB-8504-DD8C555D8D79}", InputDevice)
 
 InputDeviceVirtualKeyboard (const InputDeviceId &inputDeviceId=Id, ImplementationFactory implementationFactory=&Implementation::Create)
 
 AZ_DISABLE_COPY_MOVE (InputDeviceVirtualKeyboard)
 
 ~InputDeviceVirtualKeyboard () override
 Destructor.
 
const InputChannelByIdMap & GetInputChannelsById () const override
 AzFramework::InputDevice::GetInputChannelsById
 
bool IsSupported () const override
 AzFramework::InputDevice::IsSupported
 
bool IsConnected () const override
 AzFramework::InputDevice::IsConnected
 
bool HasTextEntryStarted () const override
 AzFramework::InputTextEntryRequests::HasTextEntryStarted
 
void TextEntryStart (const VirtualKeyboardOptions &options) override
 AzFramework::InputTextEntryRequests::TextEntryStart
 
void TextEntryStop () override
 AzFramework::InputTextEntryRequests::TextEntryStop
 
void TickInputDevice () override
 AzFramework::InputDeviceRequests::TickInputDevice
 
void SetImplementation (AZStd::unique_ptr< Implementation > impl)
 
- Public Member Functions inherited from AzFramework::InputDevice
 AZ_CLASS_ALLOCATOR (InputDevice, AZ::SystemAllocator)
 
 AZ_RTTI (InputDevice, "{29F9FB6B-15CB-4DB4-9F36-DE7396B82F3D}")
 
 InputDevice (const InputDeviceId &inputDeviceId)
 
 AZ_DISABLE_COPY_MOVE (InputDevice)
 
 ~InputDevice () override
 Destructor.
 
const InputDeviceGetInputDevice () const final
 AzFramework::InputDeviceRequests::GetInputDevice
 
const InputDeviceIdGetInputDeviceId () const
 
virtual LocalUserId GetAssignedLocalUserId () const
 
virtual void PromptLocalUserSignIn () const
 
virtual const InputChannelByIdMap & GetInputChannelsById () const =0
 
virtual bool IsSupported () const =0
 
virtual bool IsConnected () const =0
 

Static Public Member Functions

static bool IsVirtualKeyboardDevice (const InputDeviceId &inputDeviceId)
 
static void Reflect (AZ::ReflectContext *context)
 
- Static Public Member Functions inherited from AzFramework::InputDevice
static void Reflect (AZ::ReflectContext *context)
 

Static Public Attributes

static constexpr InputDeviceId Id {"virtual_keyboard"}
 The id used to identify the primary virtual keyboard input device.
 

Protected Types

using CommandChannelByIdMap = AZStd::unordered_map< InputChannelId, InputChannel * >
 Alias for verbose container class.
 

Protected Attributes

InputChannelByIdMap m_allChannelsById
 All virtual keyboard channels by id.
 
CommandChannelByIdMap m_commandChannelsById
 All virtual command channels by id.
 

Additional Inherited Members

- Protected Member Functions inherited from AzFramework::InputDevice
void BroadcastInputChannelEvent (const InputChannel &inputChannel) const
 
void BroadcastInputTextEvent (const AZStd::string &textUTF8) const
 
void BroadcastInputDeviceConnectedEvent () const
 Broadcast an event when the input device connects to the system.
 
void BroadcastInputDeviceDisconnectedEvent () const
 Broadcast an event when the input device disconnects from the system.
 
void ResetInputChannelStates ()
 Reset the state of all this input device's associated input channels.
 

Detailed Description

Defines a generic virtual keyboard device. Platform specific implementations are defined as private implementations so that creating an instance of this generic class will work on any platform that supports a virtual keyboard.

Constructor & Destructor Documentation

◆ InputDeviceVirtualKeyboard()

AzFramework::InputDeviceVirtualKeyboard::InputDeviceVirtualKeyboard ( const InputDeviceId inputDeviceId = Id,
ImplementationFactory  implementationFactory = &Implementation::Create 
)
explicit

Constructor

Parameters
[in]inputDeviceIdOptional override of the default input device id
[in]implementationFactoryOptional override of the default Implementation::Create

Member Function Documentation

◆ GetInputChannelsById()

const InputChannelByIdMap & AzFramework::InputDeviceVirtualKeyboard::GetInputChannelsById ( ) const
overridevirtual

◆ IsConnected()

bool AzFramework::InputDeviceVirtualKeyboard::IsConnected ( ) const
overridevirtual

◆ IsSupported()

bool AzFramework::InputDeviceVirtualKeyboard::IsSupported ( ) const
overridevirtual

◆ IsVirtualKeyboardDevice()

static bool AzFramework::InputDeviceVirtualKeyboard::IsVirtualKeyboardDevice ( const InputDeviceId inputDeviceId)
static

Check whether an input device id identifies a virtual keyboard (regardless of index)

Parameters
[in]inputDeviceIdThe input device id to check
Returns
True if the input device id identifies a virtual keyboard, false otherwise

◆ SetImplementation()

void AzFramework::InputDeviceVirtualKeyboard::SetImplementation ( AZStd::unique_ptr< Implementation impl)
inline

Set the implementation of this input device

Parameters
[in]implementationThe new implementation

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