Plasma Engine  2.0
Loading...
Searching...
No Matches
plDummyXRInput Class Reference
Inheritance diagram for plDummyXRInput:

Public Member Functions

void GetDeviceList (plHybridArray< plXRDeviceID, 64 > &out_devices) const override
 Fills out a list of valid (connected) device IDs.
 
plXRDeviceID GetDeviceIDByType (plXRDeviceType::Enum type) const override
 Returns the deviceID for a specific type of device. If the device is not connected, -1 is returned instead.
 
const plXRDeviceStateGetDeviceState (plXRDeviceID deviceID) const override
 Returns the current device state for a valid device ID.
 
plString GetDeviceName (plXRDeviceID deviceID) const override
 Returns the device name for a valid device ID.
 
plBitflags< plXRDeviceFeaturesGetDeviceFeatures (plXRDeviceID deviceID) const override
 Returns the device features for a valid device ID.
 
- Public Member Functions inherited from plXRInputDevice
const plXRDeviceEventGetInputEvent ()
 Returns the input event. Allows tracking device addition and removal.
 
- Public Member Functions inherited from plInputDevice
 plInputDevice ()
 Default Constructor.
 
float GetInputSlotState (plStringView 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 plReflectedClass
virtual const plRTTIGetDynamicRTTI () const
 
bool IsInstanceOf (const plRTTI *pType) const
 Returns whether the type of this instance is of the given type or derived from it.
 
template<typename T >
PL_ALWAYS_INLINE bool IsInstanceOf () const
 Returns whether the type of this instance is of the given type or derived from it.
 

Protected Member Functions

void InitializeDevice () override
 Override this if you need to do device specific initialization before the first use.
 
void UpdateInputSlotValues () override
 Override this, if you need to query the state of the hardware to update the input slots.
 
void RegisterInputSlots () override
 Override this to register all the input slots that this device exposes.
 
- Protected Member Functions inherited from plInputDevice
virtual void ResetInputSlotValues ()
 Override this, if you need to reset certain input slot values to zero, after the plInputManager is finished with the current frame update.
 
virtual void UpdateHardwareState (plTime tTimeDifference)
 This function is called once after plInputManager::Update with the same time delta value. It allows to update hardware state, such as the vibration of gamepad motors.
 

Protected Attributes

plXRDeviceState m_DeviceState [1]
 
- Protected Attributes inherited from plXRInputDevice
plXRDeviceEvent m_InputEvents
 
- Protected Attributes inherited from plInputDevice
plMap< plString, float > m_InputSlotValues
 Stores all the values for all input slots that this device handles.
 
plUInt32 m_uiLastCharacter
 If this input device type handles character input, it should write the last typed character into this variable. The plInputManager calls RetrieveLastCharacter() to query what the user typed last.
 
- Protected Attributes inherited from plEnumerable< plInputDevice, plReflectedClass >
plEnumerablem_pNextInstance
 

Friends

class plDummyXR
 

Additional Inherited Members

- Static Public Member Functions inherited from plNoBase
static const plRTTIGetStaticRTTI ()
 
- Static Protected Member Functions inherited from plInputDevice
static void RegisterInputSlot (plStringView sName, plStringView sDefaultDisplayName, plBitflags< plInputSlotFlags > SlotFlags)
 Calls RegisterInputSlot() on the plInputManager and passes the parameters through.
 

Member Function Documentation

◆ GetDeviceFeatures()

plBitflags< plXRDeviceFeatures > plDummyXRInput::GetDeviceFeatures ( plXRDeviceID deviceID) const
overridevirtual

Returns the device features for a valid device ID.

Implements plXRInputDevice.

◆ GetDeviceIDByType()

plXRDeviceID plDummyXRInput::GetDeviceIDByType ( plXRDeviceType::Enum type) const
overridevirtual

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

Implements plXRInputDevice.

◆ GetDeviceList()

void plDummyXRInput::GetDeviceList ( plHybridArray< plXRDeviceID, 64 > & out_devices) const
overridevirtual

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

Implements plXRInputDevice.

◆ GetDeviceName()

plString plDummyXRInput::GetDeviceName ( plXRDeviceID deviceID) const
overridevirtual

Returns the device name for a valid device ID.

This returns a human readable name to identify the device. For plXRDeviceType::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.

Implements plXRInputDevice.

◆ GetDeviceState()

const plXRDeviceState & plDummyXRInput::GetDeviceState ( plXRDeviceID deviceID) const
overridevirtual

Returns the current device state for a valid device ID.

Implements plXRInputDevice.

◆ InitializeDevice()

void plDummyXRInput::InitializeDevice ( )
overrideprotectedvirtual

Override this if you need to do device specific initialization before the first use.

Implements plInputDevice.

◆ RegisterInputSlots()

void plDummyXRInput::RegisterInputSlots ( )
overrideprotectedvirtual

Override this to register all the input slots that this device exposes.

This is called once during initialization. It needs to call RegisterInputSlot() once for every input slot that this device exposes to the system.

Implements plInputDevice.

◆ UpdateInputSlotValues()

void plDummyXRInput::UpdateInputSlotValues ( )
overrideprotectedvirtual

Override this, if you need to query the state of the hardware to update the input slots.

Note
This function might be called multiple times before ResetInputSlotValues() is called. This will be the case when plInputManager::PollHardware is used to make more frequent hardware updates than input is actually processed. Just make sure to always accumulate delta values (such as mouse move values) and don't expect ResetInputSlotValues() to be called in tandem with this function and it will be fine.

Implements plInputDevice.


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