Skip to content
LeviMC
English
AutoLightDark
LeviLamina
Loading...
Searching...
No Matches
GamePadMapper Class Reference
Inheritance diagram for GamePadMapper:

Public Types

using GameControllerButtonId = int
using GamePadTriggerId = int
using GamePadStickId = int
using GamePadButtonToButtonIdMap = ::std::unordered_multimap<int, ::GameControllerMapper::ButtonAttributes>
using GamePadTriggerToButtonIdMap = ::std::unordered_multimap<int, ::GameControllerMapper::TriggerState>
using GamePadStickToDirectionIdMap = ::std::unordered_multimap<int, ::GameControllerMapper::DirectionAttributes>
using GamePadStickToButtonIdMap = ::std::unordered_multimap<int, uint>
using GamePadStickDirectionToButtonIdMap = ::std::unordered_multimap<::DirectionId, uint>
using GamePadExclusiveButtonIdSet = ::std::set<uint>
using GamePadStickEvents = ::std::unordered_map<int, ::GameControllerStickEvent>

Public Member Functions

virtual::InputMode getInputMode () const
virtual ::std::vector<::std::weak_ptr<::IGameController > > _getGameControllers ()
virtual::GameControllerInputMapping const & getGameControllerMapping (::InputMapping const &inputMapping)
MCAPI::InputMode $getInputMode () const
MCAPI ::std::vector<::std::weak_ptr<::IGameController > > $_getGameControllers ()
MCAPI::GameControllerInputMapping const & $getGameControllerMapping (::InputMapping const &inputMapping)
virtual void setMapping (::InputEventQueue &eventQueue, ::BindingFactory const &bindingFactory, ::InputMapping const &inputMapping, int controllerId)
virtual void clearMapping (int controllerId)
virtual bool tick (::InputEventQueue &eventQueue, ::Bedrock::NotNullNonOwnerPtr<::ControllerIDtoClientMap > const &map)
virtual void changeControllerId (int oldId, int newId)
MCAPI void _enqueueButtonDownUpEvents (::InputEventQueue &eventQueue, ::GameControllerMapper::GamepadStickTurnData &turnData, ::DirectionId direction)
MCAPI void _handleButtonEvent (::InputEventQueue &eventQueue, ::GameControllerButtonEvent const &buttonEvent, int controllerId, int alternateControllerId)
MCAPI void _handleStickEvent (::InputEventQueue &eventQueue, ::GameControllerStickEvent const &stickEvent, int controllerId)
MCAPI void * $ctor ()
MCAPI void $setMapping (::InputEventQueue &eventQueue, ::BindingFactory const &bindingFactory, ::InputMapping const &inputMapping, int controllerId)
MCAPI void $clearMapping (int controllerId)
MCAPI bool $tick (::InputEventQueue &eventQueue, ::Bedrock::NotNullNonOwnerPtr<::ControllerIDtoClientMap > const &map)
MCAPI void $changeControllerId (int oldId, int newId)
virtual void clearInputDeviceQueue ()
virtual void clearInputDeviceQueueForFrame ()
virtual void getCursorPos (float &xCursor, float &yCursor) const
virtual void render (::InputRenderContext &context) const
virtual void setWindowSize (int width, int height)
virtual void setBindingMode (::InputBindingMode mode, int controllerId)
virtual::InputBindingMode getBindingMode (int controllerId)
MCAPI void $clearInputDeviceQueue ()
MCAPI void $clearInputDeviceQueueForFrame ()
MCAPI void $getCursorPos (float &xCursor, float &yCursor) const
MCAPI void $render (::InputRenderContext &context) const
MCAPI void $setWindowSize (int width, int height)
MCAPI void $setBindingMode (::InputBindingMode mode, int controllerId)
MCAPI::InputBindingMode $getBindingMode (int controllerId)

Static Public Member Functions

static MCAPI void ** $vftable ()

Public Attributes

::ll::TypedStorage< 8, 8, double > mLastTime
::ll::TypedStorage< 8, 64, ::std::unordered_map< int, double > > mLastTurnButtonTimeSeconds
::ll::TypedStorage< 8, 24, ::std::vector<::GameControllerMapper::GamepadStickTurnData > > mStickTurnData
::ll::TypedStorage< 8, 64, ::std::unordered_map< int, ::GameControllerMapper::GameControllerMappingData > > mPerIdMappings
::ll::TypedStorage< 4, 4, int > mScreenWidth
::ll::TypedStorage< 4, 4, int > mScreenHeight
::ll::TypedStorage< 8, 64, ::std::unordered_map< int, ::InputBindingMode > > mBindingMode

Member Function Documentation

◆ getInputMode()

virtual::InputMode GamePadMapper::getInputMode ( ) const
virtual

Reimplemented from GameControllerMapper.

◆ _getGameControllers()

virtual ::std::vector<::std::weak_ptr<::IGameController > > GamePadMapper::_getGameControllers ( )
virtual

Implements GameControllerMapper.

◆ getGameControllerMapping()

virtual::GameControllerInputMapping const & GamePadMapper::getGameControllerMapping ( ::InputMapping const & inputMapping)
virtual

Implements GameControllerMapper.

◆ $getInputMode()

MCAPI::InputMode GamePadMapper::$getInputMode ( ) const
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

◆ $_getGameControllers()

MCAPI ::std::vector<::std::weak_ptr<::IGameController > > GamePadMapper::$_getGameControllers ( )
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

◆ $getGameControllerMapping()

MCAPI::GameControllerInputMapping const & GamePadMapper::$getGameControllerMapping ( ::InputMapping const & inputMapping)
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

◆ $vftable()

MCAPI void ** GamePadMapper::$vftable ( )
static
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

◆ setMapping()

virtual void GameControllerMapper::setMapping ( ::InputEventQueue & eventQueue,
::BindingFactory const & bindingFactory,
::InputMapping const & inputMapping,
int controllerId )
virtualinherited

Implements InputDeviceMapper.

◆ clearMapping()

virtual void GameControllerMapper::clearMapping ( int controllerId)
virtualinherited

Implements InputDeviceMapper.

◆ tick()

virtual bool GameControllerMapper::tick ( ::InputEventQueue & eventQueue,
::Bedrock::NotNullNonOwnerPtr<::ControllerIDtoClientMap > const & map )
virtualinherited

Implements InputDeviceMapper.

◆ changeControllerId()

virtual void GameControllerMapper::changeControllerId ( int oldId,
int newId )
virtualinherited

Reimplemented from InputDeviceMapper.

◆ _enqueueButtonDownUpEvents()

MCAPI void GameControllerMapper::_enqueueButtonDownUpEvents ( ::InputEventQueue & eventQueue,
::GameControllerMapper::GamepadStickTurnData & turnData,
::DirectionId direction )
inherited
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

◆ _handleButtonEvent()

MCAPI void GameControllerMapper::_handleButtonEvent ( ::InputEventQueue & eventQueue,
::GameControllerButtonEvent const & buttonEvent,
int controllerId,
int alternateControllerId )
inherited
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

◆ _handleStickEvent()

MCAPI void GameControllerMapper::_handleStickEvent ( ::InputEventQueue & eventQueue,
::GameControllerStickEvent const & stickEvent,
int controllerId )
inherited
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

◆ $ctor()

MCAPI void * GameControllerMapper::$ctor ( )
inherited
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

◆ $setMapping()

MCAPI void GameControllerMapper::$setMapping ( ::InputEventQueue & eventQueue,
::BindingFactory const & bindingFactory,
::InputMapping const & inputMapping,
int controllerId )
inherited
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

◆ $clearMapping()

MCAPI void GameControllerMapper::$clearMapping ( int controllerId)
inherited
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

◆ $tick()

MCAPI bool GameControllerMapper::$tick ( ::InputEventQueue & eventQueue,
::Bedrock::NotNullNonOwnerPtr<::ControllerIDtoClientMap > const & map )
inherited
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

◆ $changeControllerId()

MCAPI void GameControllerMapper::$changeControllerId ( int oldId,
int newId )
inherited
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

◆ $clearInputDeviceQueue()

MCAPI void InputDeviceMapper::$clearInputDeviceQueue ( )
inherited
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

◆ $clearInputDeviceQueueForFrame()

MCAPI void InputDeviceMapper::$clearInputDeviceQueueForFrame ( )
inherited
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

◆ $getCursorPos()

MCAPI void InputDeviceMapper::$getCursorPos ( float & xCursor,
float & yCursor ) const
inherited
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

◆ $render()

MCAPI void InputDeviceMapper::$render ( ::InputRenderContext & context) const
inherited
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

◆ $setWindowSize()

MCAPI void InputDeviceMapper::$setWindowSize ( int width,
int height )
inherited
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

◆ $setBindingMode()

MCAPI void InputDeviceMapper::$setBindingMode ( ::InputBindingMode mode,
int controllerId )
inherited
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

◆ $getBindingMode()

MCAPI::InputBindingMode InputDeviceMapper::$getBindingMode ( int controllerId)
inherited
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

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