3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/common/SubClientId.h"
7#include "mc/deps/core/utility/NonOwnerPointer.h"
8#include "mc/deps/core/utility/pub_sub/Subscription.h"
22namespace cohtml {
class View; }
30 enum class SupportedClients :
int {
38 ::ll::TypedStorage<1, 1, ::SubClientId> mSubClientId;
39 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::OreUI::TouchInputHandler>> mTouchInputHandler;
40 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::OreUI::TextInputHandler>> mTextInputHandler;
41 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::OreUI::GamepadInputHandler>> mGamepadInputHandler;
42 ::ll::TypedStorage<8, 8, ::KeyboardManager&> mKeyboardManager;
43 ::ll::TypedStorage<8, 8, ::cohtml::View&> mView;
44 ::ll::TypedStorage<8, 24, ::Bedrock::NotNullNonOwnerPtr<::ControllerIDtoClientMap>> mControllerToClientMap;
45 ::ll::TypedStorage<8, 24, ::Bedrock::NotNullNonOwnerPtr<::Input::Debug::ISplitscreenRedirect>>
46 mDebugSplitscreenInputRedirect;
47 ::ll::TypedStorage<1, 1, bool> mEmulateTouchInput;
48 ::ll::TypedStorage<1, 1, bool> mIsPointerDown;
49 ::ll::TypedStorage<1, 1, bool const> mIsPrimaryClient;
50 ::ll::TypedStorage<1, 1, bool> mIsFullKeyboard;
51 ::ll::TypedStorage<8, 16, ::Bedrock::PubSub::Subscription> mIsFullKeyboardSubscription;
52 ::ll::TypedStorage<1, 1, bool> mInvertMouse;
53 ::ll::TypedStorage<8, 16, ::Bedrock::PubSub::Subscription> mInvertMouseSubscription;
58 ViewInputHandler& operator=(ViewInputHandler
const&);
59 ViewInputHandler(ViewInputHandler
const&);
65 MCAPI ViewInputHandler(
66 ::SubClientId subClientId,
67 ::std::unique_ptr<::OreUI::TextInputHandler> textInputHandler,
68 ::std::unique_ptr<::OreUI::TouchInputHandler> touchInputHandler,
69 ::std::unique_ptr<::OreUI::GamepadInputHandler> gamepadInputHandler,
70 ::KeyboardManager& keyboardManager,
72 ::Bedrock::NotNullNonOwnerPtr<::ControllerIDtoClientMap> controllerIdToClientMap,
73 ::Bedrock::NotNullNonOwnerPtr<::Input::Debug::ISplitscreenRedirect>
const& debugSplitscreenInputRedirect,
75 ::IOptionRegistry& options
78 MCAPI
void handleKeyboardInput(::KeyboardAction
const& keyboardAction);
80 MCAPI
void handleMouseInput(::MouseAction
const& mouseAction);
82 MCAPI
bool shouldHandleGamepad(::std::shared_ptr<::IGameController> gamePad);
84 MCAPI ~ViewInputHandler();
91 ::SubClientId subClientId,
92 ::std::unique_ptr<::OreUI::TextInputHandler> textInputHandler,
93 ::std::unique_ptr<::OreUI::TouchInputHandler> touchInputHandler,
94 ::std::unique_ptr<::OreUI::GamepadInputHandler> gamepadInputHandler,
95 ::KeyboardManager& keyboardManager,
97 ::Bedrock::NotNullNonOwnerPtr<::ControllerIDtoClientMap> controllerIdToClientMap,
98 ::Bedrock::NotNullNonOwnerPtr<::Input::Debug::ISplitscreenRedirect>
const& debugSplitscreenInputRedirect,
100 ::IOptionRegistry& options
Definition IGameController.h:5
Definition IOptionRegistry.h:5
Definition KeyboardAction.h:5
Definition KeyboardManager.h:5
Definition MouseAction.h:5
Definition TextInputHandler.h:7
Definition ControllerIDtoClientMap.h:5