3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/client/input/GamePadRemappingLayout.h"
7#include "mc/deps/input/InputMappingFactory.h"
21 using InputMappingMap = ::std::unordered_map<::std::string, ::InputMapping>;
26 ::ll::TypedStorage<8, 64, ::std::unordered_map<::std::string, ::InputMapping>> mActiveInputMappings;
27 ::ll::TypedStorage<8, 64, ::std::unordered_map<::std::string, ::InputMapping>> mInputMappingTemplates;
28 ::ll::TypedStorage<1, 1, bool> mInvertYAxis;
29 ::ll::TypedStorage<1, 1, bool> mSwapGamepadButtonsXY;
30 ::ll::TypedStorage<1, 1, bool> mSwapGamepadButtonsAB;
31 ::ll::TypedStorage<4, 4, float> mSensitivity;
32 ::ll::TypedStorage<8, 128, ::GamePadRemappingLayout> mGameControllerRemappingLayout;
33 ::ll::TypedStorage<8, 16, ::std::weak_ptr<::KeyboardRemappingLayout>> mKeyboardRemappingLayout;
38 ClientInputMappingFactory();
43 virtual ::InputMapping
const* getMapping(::std::string
const& mappingName) ;
45 virtual void createInputMappingTemplates(::IOptionRegistry& options) = 0;
47 virtual ::TouchInputMapping _createScreenTouchMapping()
const;
49 virtual ::std::vector<::DeviceButtonMapping> _createScreenDeviceButtonMapping()
const;
51 virtual void _updateKeyboardAndMouseControls(::IOptionRegistry& options) = 0;
53 virtual void _updateGameControllerControls() = 0;
55 virtual void _updateTouchMappingControls() = 0;
61 MCAPI
explicit ClientInputMappingFactory(::std::weak_ptr<::KeyboardRemappingLayout> currentKeyboardLayout);
63 MCAPI
void _activateMapping(::std::string
const& mappingName);
65 MCAPI ::InputMapping* _getMappingInternal(::std::string
const& mappingName);
71 MCAPI
void* $ctor(::std::weak_ptr<::KeyboardRemappingLayout> currentKeyboardLayout);
77 MCAPI ::InputMapping
const* $getMapping(::std::string
const& mappingName);
79 MCAPI ::TouchInputMapping $_createScreenTouchMapping()
const;
81 MCAPI ::std::vector<::DeviceButtonMapping> $_createScreenDeviceButtonMapping()
const;
Definition IOptionRegistry.h:5
Definition KeyboardRemappingLayout.h:5