LeviLamina
Loading...
Searching...
No Matches
ClientInputMappingFactory.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/client/input/GamePadRemappingLayout.h"
7#include "mc/deps/input/InputMappingFactory.h"
8
9// auto generated forward declare list
10// clang-format off
11class IOptions;
13struct Config;
15struct InputMapping;
17// clang-format on
18
20public:
21 // ClientInputMappingFactory inner types define
22 using InputMappingMap = ::std::unordered_map<::std::string, ::InputMapping>;
23
24public:
25 // member variables
26 // NOLINTBEGIN
27 ::ll::TypedStorage<8, 64, ::std::unordered_map<::std::string, ::InputMapping>> mActiveInputMappings;
28 ::ll::TypedStorage<8, 64, ::std::unordered_map<::std::string, ::InputMapping>> mInputMappingTemplates;
29 ::ll::TypedStorage<1, 1, bool> mInvertYAxis;
30 ::ll::TypedStorage<1, 1, bool> mSwapGamepadButtonsXY;
31 ::ll::TypedStorage<1, 1, bool> mSwapGamepadButtonsAB;
32 ::ll::TypedStorage<4, 4, float> mSensitivity;
33 ::ll::TypedStorage<8, 80, ::GamePadRemappingLayout> mGameControllerRemappingLayout;
34 ::ll::TypedStorage<8, 16, ::std::weak_ptr<::KeyboardRemappingLayout>> mKeyboardRemappingLayout;
35 // NOLINTEND
36
37public:
38 // prevent constructor by default
40
41public:
42 // virtual functions
43 // NOLINTBEGIN
44 virtual ::InputMapping const* getMapping(::std::string const& mappingName) /*override*/;
45
46 virtual void createInputMappingTemplates(::IOptions&) = 0;
47
48 virtual ::TouchInputMapping _createScreenTouchMapping() const;
49
50 virtual ::std::vector<::DeviceButtonMapping> _createScreenDeviceButtonMapping() const;
51
52 virtual void _updateKeyboardAndMouseControls(::IOptions&) = 0;
53
54 virtual void _updateGameControllerControls() = 0;
55
56 virtual void _updateTouchMappingControls() = 0;
57
58 virtual ~ClientInputMappingFactory() /*override*/;
59 // NOLINTEND
60
61public:
62 // member functions
63 // NOLINTBEGIN
64 MCAPI explicit ClientInputMappingFactory(::std::weak_ptr<::KeyboardRemappingLayout> currentKeyboardLayout);
65
66 MCAPI void _activateMapping(::std::string const& mappingName);
67
68 MCFOLD ::InputMapping* _getMappingInternal(::std::string const& mappingName);
69
70 MCAPI void onConfigChanged(::Config const& config);
71 // NOLINTEND
72
73public:
74 // constructor thunks
75 // NOLINTBEGIN
76 MCAPI void* $ctor(::std::weak_ptr<::KeyboardRemappingLayout> currentKeyboardLayout);
77 // NOLINTEND
78
79public:
80 // destructor thunk
81 // NOLINTBEGIN
82 MCAPI void $dtor();
83 // NOLINTEND
84
85public:
86 // virtual function thunks
87 // NOLINTBEGIN
88 MCFOLD ::InputMapping const* $getMapping(::std::string const& mappingName);
89
90 MCAPI ::TouchInputMapping $_createScreenTouchMapping() const;
91
92 MCAPI ::std::vector<::DeviceButtonMapping> $_createScreenDeviceButtonMapping() const;
93 // NOLINTEND
94
95public:
96 // vftables
97 // NOLINTBEGIN
98 MCNAPI static void** $vftable();
99 // NOLINTEND
100};
Definition ClientInputMappingFactory.h:5
static MCAPI void ** $vftable()
Definition InputMappingFactory.h:5
Definition KeyboardRemappingLayout.h:5
Definition Config.h:5
Definition DeviceButtonMapping.h:5
Definition InputMapping.h:5
Definition TouchInputMapping.h:5