XII Release 0.1.0
Loading...
Searching...
No Matches
xiiXRInputDevice Class Referenceabstract
Inheritance diagram for xiiXRInputDevice:
[legend]

Public Member Functions

Devices
virtual void GetDeviceList (xiiHybridArray< xiiXRDeviceID, 64 > &out_devices) const =0
 Fills out a list of valid (connected) device IDs.
 
virtual xiiXRDeviceID GetDeviceIDByType (xiiXRDeviceType::Enum type) const =0
 Returns the deviceID for a specific type of device. If the device is not connected, -1 is returned instead.
 
virtual const xiiXRDeviceStateGetDeviceState (xiiXRDeviceID deviceID) const =0
 Returns the current device state for a valid device ID.
 
virtual xiiString GetDeviceName (xiiXRDeviceID deviceID) const =0
 Returns the device name for a valid device ID.
 
virtual xiiBitflags< xiiXRDeviceFeaturesGetDeviceFeatures (xiiXRDeviceID deviceID) const =0
 Returns the device features for a valid device ID.
 
const xiiXRDeviceEventGetInputEvent ()
 Returns the input event. Allows tracking device addition and removal.
 
- Public Member Functions inherited from xiiInputDevice
 xiiInputDevice ()
 Default Constructor.
 
float GetInputSlotState (xiiStringView sSlot) const
 Allows to query current input values for the given slot.
 
bool HasDeviceBeenUsedLastFrame () const
 Returns true, if the device was 'used' during the last frame, ie. when it generated input due to some user interaction.
 
- Public Member Functions inherited from xiiReflectedClass
virtual const xiiRTTIGetDynamicRTTI () const
 
bool IsInstanceOf (const xiiRTTI *pType) const
 Returns whether the type of this instance is of the given type or derived from it.
 
template<typename T>
XII_ALWAYS_INLINE bool IsInstanceOf () const
 Returns whether the type of this instance is of the given type or derived from it.
 

Protected Attributes

xiiXRDeviceEvent m_InputEvents
 
- Protected Attributes inherited from xiiInputDevice
xiiMap< xiiString, float > m_InputSlotValues
 Stores all the values for all input slots that this device handles.
 
xiiUInt32 m_uiLastCharacter
 If this input device type handles character input, it should write the last typed character into this variable. The xiiInputManager calls RetrieveLastCharacter() to query what the user typed last.
 
- Protected Attributes inherited from xiiEnumerable< xiiInputDevice, xiiReflectedClass >
xiiEnumerablem_pNextInstance
 

Additional Inherited Members

- Static Public Member Functions inherited from xiiNoBase
static const xiiRTTIGetStaticRTTI ()
 
- Protected Member Functions inherited from xiiInputDevice
virtual void InitializeDevice ()=0
 Override this if you need to do device specific initialization before the first use.
 
virtual void UpdateInputSlotValues ()=0
 Override this, if you need to query the state of the hardware to update the input slots.
 
virtual void ResetInputSlotValues ()
 Override this, if you need to reset certain input slot values to zero, after the xiiInputManager is finished with the current frame update.
 
virtual void RegisterInputSlots ()=0
 Override this to register all the input slots that this device exposes.
 
virtual void UpdateHardwareState (xiiTime tTimeDifference)
 This function is called once after xiiInputManager::Update with the same time delta value. It allows to update hardware state, such as the vibration of gamepad motors.
 
- Static Protected Member Functions inherited from xiiInputDevice
static void RegisterInputSlot (xiiStringView sName, xiiStringView sDefaultDisplayName, xiiBitflags< xiiInputSlotFlags > SlotFlags)
 Calls RegisterInputSlot() on the xiiInputManager and passes the parameters through.
 

Member Function Documentation

◆ GetDeviceFeatures()

virtual xiiBitflags< xiiXRDeviceFeatures > xiiXRInputDevice::GetDeviceFeatures ( xiiXRDeviceID deviceID) const
pure virtual

Returns the device features for a valid device ID.

Implemented in xiiDummyXRInput.

◆ GetDeviceIDByType()

virtual xiiXRDeviceID xiiXRInputDevice::GetDeviceIDByType ( xiiXRDeviceType::Enum type) const
pure virtual

Returns the deviceID for a specific type of device. If the device is not connected, -1 is returned instead.

Implemented in xiiDummyXRInput.

◆ GetDeviceList()

virtual void xiiXRInputDevice::GetDeviceList ( xiiHybridArray< xiiXRDeviceID, 64 > & out_devices) const
pure virtual

Fills out a list of valid (connected) device IDs.

Implemented in xiiDummyXRInput.

◆ GetDeviceName()

virtual xiiString xiiXRInputDevice::GetDeviceName ( xiiXRDeviceID deviceID) const
pure virtual

Returns the device name for a valid device ID.

This returns a human readable name to identify the device. For xiiXRDeviceType::HMD the name is always 'HMD'. This can be used for e.g. controllers to create custom game input logic or mappings if a certain type of controller is used. Values could be for example: 'Simple Controller', 'Mixed Reality Motion Controller', 'Hand Interaction' etc.

Implemented in xiiDummyXRInput.

◆ GetDeviceState()

virtual const xiiXRDeviceState & xiiXRInputDevice::GetDeviceState ( xiiXRDeviceID deviceID) const
pure virtual

Returns the current device state for a valid device ID.

Implemented in xiiDummyXRInput.


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