LeviLamina
Loading...
Searching...
No Matches
InputHandler Class Reference

Classes

struct  InputHandlerState

Public Types

using InputModeHandler = ::std::function<void(::InputMode, ::IClientInstance&)>
using ButtonPressHandler = ::std::function<void(::FocusImpact, ::IClientInstance&)>
using TextCharHandler = ::std::function<void(::std::string const&, ::FocusImpact, ::IClientInstance&)>
using CaretLocationHandler = ::std::function<void(int, ::FocusImpact, ::IClientInstance&)>
using PointerLocationHandler
using PointerLocationWithIdHandler
using ClearPointerLocationWithIdHandler
using ClearPointerLocationsHandler = ::std::function<void(::IClientInstance&)>
using DirectionHandler = ::std::function<void(float, float, ::FocusImpact, ::IClientInstance&)>
using TurnHandler = ::std::function<void(float, float, ::FocusImpact, ::IClientInstance&)>
using VectorHandler = ::std::function<void(short, float, float, float, ::FocusImpact, ::IClientInstance&)>
using AnyInputHandler = ::std::function<void(::IClientInstance&)>
using RawInputHandler = ::std::function<void(int, ::RawInputType, ::ButtonState, bool, ::IClientInstance&)>
using AddClientHandler = ::std::function<void(::IMinecraftGame*, int, bool)>
using ChangeUserHandler = ::std::function<void(::IMinecraftGame*, int, bool)>
using ControllerConnectionStateChangeHandler = ::std::function<void(::IClientInstance&, bool, int)>
using TouchPadTouchHandler
using ControlOptionHandler = ::std::function<void(::ControlOptionEventData const&, ::IClientInstance&)>
using NumberOfEnabledControlOptionsHandler
using OverlappingControlsHandler = ::std::function<void(::OverlappingControlsEventData const&, ::IClientInstance&)>
using PotentialOverlappingControlsHandler = ::std::function<void(::IClientInstance&)>
using InputModeHandlers = ::std::vector<::std::function<void(::InputMode, ::IClientInstance&)>>
using ButtonHandlerMap
using TextCharHandlers
using CaretLocationHandlers = ::std::vector<::std::function<void(int, ::FocusImpact, ::IClientInstance&)>>
using PointerLocationHandlers
using PointerLocationWithIdHandlers
using ClearPointerLocationWithIdHandlers
using ClearPointerLocationsHandlers = ::std::vector<::std::function<void(::IClientInstance&)>>
using DirectionHandlerMap
using VectorHandlers
using TouchPadHandlers
using PointerLocationWithIdHandlersMap
using ControlOptionHandlers
using NumberOfEnabledControlOptionsHandlers
using OverlappingControlsHandlers
using PotentialOverlappingControlsHandlers = ::std::vector<::std::function<void(::IClientInstance&)>>

Public Member Functions

InputHandleroperator= (InputHandler const &)
 InputHandler (InputHandler const &)
MCAPI InputHandler (::BindingFactoryMap &bindingFactoryMap, ::InputMappingFactoryMap &mappingFactoryMap, ::InputMode startingInputMode)
MCAPI void _handleButtonEvent (::ButtonEventData const &button, ::FocusImpact focusImpact, ::IClientInstance &client, int controllerId)
MCAPI void _handleMappingChange (::InputMapping const *newMapping, ::InputMapping const *oldMapping, int controllerId)
MCAPI void changeControllerId (int oldId, int newId)
MCAPI void clearInputMapping (int controllerId)
MCAPI::std::string const & getCurrentInputMapping (int controllerId) const
MCAPI::InputMode getCurrentInputMode (int controllerId) const
MCAPI void popInputMapping (int controllerId)
MCAPI void pushInputMapping (::std::string const &mappingName, int controllerId)
MCAPI void registerButtonDownHandler (::std::string buttonName, ::std::function< void(::FocusImpact, ::IClientInstance &)> handler, bool suspendable)
MCAPI void registerButtonUpHandler (::std::string buttonName, ::std::function< void(::FocusImpact, ::IClientInstance &)> handler, bool suspendable)
MCAPI void registerClearPointerLocationsHandler (::std::function< void(::IClientInstance &)> handler)
MCAPI void registerDirectionHandler (::DirectionId directionId, ::std::function< void(float, float, ::FocusImpact, ::IClientInstance &)> handler)
MCAPI void registerInputModeHandler (::std::function< void(::InputMode, ::IClientInstance &)> handler)
MCAPI void registerOverlappingControlsHandler (::std::function< void(::OverlappingControlsEventData const &, ::IClientInstance &)> handler)
MCAPI void registerPotentialOverlappingControlsHandler (::std::function< void(::IClientInstance &)> handler)
MCAPI void registerTouchPadTouchHandler (::std::function< void(::TouchPadTouchEventData const &, ::FocusImpact, ::IClientInstance &)> handler)
MCAPI void releaseButtonsAndSticks (::std::string const &currentMappingName, int controllerId)
MCAPI void tick (::IMinecraftGame *mcGame, ::IClientInstance &primaryClientInstance, ::Bedrock::NotNullNonOwnerPtr<::ControllerIDtoClientMap > const &controllerClientMap, bool allowMultipleClients)
MCAPI void updateInputMapping (::std::string const &mappingName, int controllerId)
MCAPI void * $ctor (::BindingFactoryMap &bindingFactoryMap, ::InputMappingFactoryMap &mappingFactoryMap, ::InputMode startingInputMode)
MCAPI void $dtor ()

Public Attributes

::ll::TypedStorage< 8, 24, ::std::vector<::std::function< void(::InputMode, ::IClientInstance &)> > > mInputModeHandlers
::ll::TypedStorage< 8, 16, ::std::multimap< uint, ::std::pair< bool, ::std::function< void(::FocusImpact, ::IClientInstance &)> > > > mButtonDownHandlerMap
::ll::TypedStorage< 8, 16, ::std::multimap< uint, ::std::pair< bool, ::std::function< void(::FocusImpact, ::IClientInstance &)> > > > mButtonUpHandlerMap
::ll::TypedStorage< 8, 24, ::std::vector<::std::function< void(::std::string const &, ::FocusImpact, ::IClientInstance &)> > > mTextCharHandlers
::ll::TypedStorage< 8, 24, ::std::vector<::std::function< void(int, ::FocusImpact, ::IClientInstance &)> > > mCaretLocationHandlers
::ll::TypedStorage< 8, 24, ::std::vector<::std::function< void(::PointerLocationEventData const &, ::FocusImpact, ::IClientInstance &)> > > mPointerLocationHandlers
::ll::TypedStorage< 8, 24, ::std::vector<::std::function< void(::PointerLocationWithIdEventData const &, ::IClientInstance &)> > > mPointerLocationWithIdHandlers
::ll::TypedStorage< 8, 24, ::std::vector<::std::function< void(::ClearPointerLocationWithIdEventData const &, ::IClientInstance &)> > > mClearPointerLocationWithIdHandlers
::ll::TypedStorage< 8, 24, ::std::vector<::std::function< void(::IClientInstance &)> > > mClearPointerLocationsHandlers
::ll::TypedStorage< 8, 16, ::std::multimap<::DirectionId, ::std::function< void(float, float, ::FocusImpact, ::IClientInstance &)> > > mDirectionHandlerMap
::ll::TypedStorage< 8, 64, ::std::function< void(::IClientInstance &)> > mAnyInputHandler
::ll::TypedStorage< 8, 64, ::std::function< void(int, ::RawInputType, ::ButtonState, bool, ::IClientInstance &)> > mRawInputHandler
::ll::TypedStorage< 8, 64, ::std::function< void(::IMinecraftGame *, int, bool)> > mAddClientHandler
::ll::TypedStorage< 8, 64, ::std::function< void(::IMinecraftGame *, int, bool)> > mChangeUserHandler
::ll::TypedStorage< 8, 64, ::std::function< void(::IClientInstance &, bool, int)> > mControllerConnectionStateChangeHandler
::ll::TypedStorage< 8, 24, ::std::vector<::std::function< void(::TouchPadTouchEventData const &, ::FocusImpact, ::IClientInstance &)> > > mTouchPadHandlers
::ll::TypedStorage< 8, 16, ::std::map< uint, ::std::function< void(::PointerLocationWithIdEventData const &, ::IClientInstance &)> > > mCustomZoneHandlers
::ll::TypedStorage< 8, 24, ::std::vector<::std::function< void(::ControlOptionEventData const &, ::IClientInstance &)> > > mControlOptionHandlers
::ll::TypedStorage< 8, 24, ::std::vector<::std::function< void(::NumberOfEnabledControlOptionsEventData const &, ::IClientInstance &)> > > mNumberOfEnabledControlOptionsHandlers
::ll::TypedStorage< 8, 24, ::std::vector<::std::function< void(::OverlappingControlsEventData const &, ::IClientInstance &)> > > mOverlappingControlsHandlers
::ll::TypedStorage< 8, 24, ::std::vector<::std::function< void(::IClientInstance &)> > > mPotentialOverlappingControlsHandlers
::ll::TypedStorage< 8, 8, ::std::unique_ptr<::InputEventQueue > > mInputEventQueue
::ll::TypedStorage< 8, 8, ::std::unique_ptr<::ButtonChordTracker > > mChordTracker
::ll::TypedStorage< 8, 8, ::std::unique_ptr<::ButtonRepeater > > mButtonRepeater
::ll::TypedStorage< 8, 24, ::std::vector<::std::unique_ptr<::InputDeviceMapper > > > mInputDeviceMappers
::ll::TypedStorage< 8, 8, ::BindingFactoryMap & > mBindingFactoryMap
::ll::TypedStorage< 8, 8, ::InputMappingFactoryMap & > mInputMappingFactoryMap
::ll::TypedStorage< 8, 64, ::std::unordered_map< int, ::InputHandler::InputHandlerState > > mPerIdState
::ll::TypedStorage< 4, 4, int > mPrimaryGameControllerId

Member Typedef Documentation

◆ PointerLocationHandler

using InputHandler::PointerLocationHandler
Initial value:
::std::function<void(::PointerLocationEventData const&, ::FocusImpact, ::IClientInstance&)>
Definition IClientInstance.h:5
Definition PointerLocationEventData.h:8

◆ PointerLocationWithIdHandler

using InputHandler::PointerLocationWithIdHandler
Initial value:
::std::function<void(::PointerLocationWithIdEventData const&, ::IClientInstance&)>
Definition PointerLocationWithIdEventData.h:5

◆ ClearPointerLocationWithIdHandler

using InputHandler::ClearPointerLocationWithIdHandler
Initial value:
Definition ClearPointerLocationWithIdEventData.h:5

◆ TouchPadTouchHandler

using InputHandler::TouchPadTouchHandler
Initial value:
::std::function<void(::TouchPadTouchEventData const&, ::FocusImpact, ::IClientInstance&)>
Definition TouchPadTouchEventData.h:5

◆ NumberOfEnabledControlOptionsHandler

using InputHandler::NumberOfEnabledControlOptionsHandler
Initial value:
Definition NumberOfEnabledControlOptionsEventData.h:5

◆ ButtonHandlerMap

using InputHandler::ButtonHandlerMap
Initial value:
::std::multimap<uint, ::std::pair<bool, ::std::function<void(::FocusImpact, ::IClientInstance&)>>>

◆ TextCharHandlers

using InputHandler::TextCharHandlers
Initial value:
::std::vector<::std::function<void(::std::string const&, ::FocusImpact, ::IClientInstance&)>>

◆ PointerLocationHandlers

using InputHandler::PointerLocationHandlers
Initial value:
::std::vector<::std::function<void(::PointerLocationEventData const&, ::FocusImpact, ::IClientInstance&)>>

◆ PointerLocationWithIdHandlers

using InputHandler::PointerLocationWithIdHandlers
Initial value:
::std::vector<::std::function<void(::PointerLocationWithIdEventData const&, ::IClientInstance&)>>

◆ ClearPointerLocationWithIdHandlers

using InputHandler::ClearPointerLocationWithIdHandlers
Initial value:
::std::vector<::std::function<void(::ClearPointerLocationWithIdEventData const&, ::IClientInstance&)>>

◆ DirectionHandlerMap

using InputHandler::DirectionHandlerMap
Initial value:
::std::multimap<::DirectionId, ::std::function<void(float, float, ::FocusImpact, ::IClientInstance&)>>

◆ VectorHandlers

using InputHandler::VectorHandlers
Initial value:
::std::vector<::std::function<void(short, float, float, float, ::FocusImpact, ::IClientInstance&)>>

◆ TouchPadHandlers

using InputHandler::TouchPadHandlers
Initial value:
::std::vector<::std::function<void(::TouchPadTouchEventData const&, ::FocusImpact, ::IClientInstance&)>>

◆ PointerLocationWithIdHandlersMap

using InputHandler::PointerLocationWithIdHandlersMap
Initial value:
::std::map<uint, ::std::function<void(::PointerLocationWithIdEventData const&, ::IClientInstance&)>>

◆ ControlOptionHandlers

using InputHandler::ControlOptionHandlers
Initial value:
::std::vector<::std::function<void(::ControlOptionEventData const&, ::IClientInstance&)>>
Definition ControlOptionEventData.h:5

◆ NumberOfEnabledControlOptionsHandlers

using InputHandler::NumberOfEnabledControlOptionsHandlers
Initial value:
::std::vector<::std::function<void(::NumberOfEnabledControlOptionsEventData const&, ::IClientInstance&)>>

◆ OverlappingControlsHandlers

using InputHandler::OverlappingControlsHandlers
Initial value:
::std::vector<::std::function<void(::OverlappingControlsEventData const&, ::IClientInstance&)>>
Definition OverlappingControlsEventData.h:5

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