3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/common/SubClientId.h"
7#include "mc/deps/input/interface/ControllerRefreshState.h"
8#include "mc/deps/input/interface/GameControllerButtonState.h"
9#include "mc/deps/input/interface/GameControllerErrorType.h"
10#include "mc/deps/input/interface/GameControllerStickState.h"
11#include "mc/deps/input/interface/IGameControllerManager.h"
23 ::ll::TypedStorage<8, 24, ::std::vector<::std::shared_ptr<::GameController>>> mGameControllers;
24 ::ll::TypedStorage<8, 8, uint64> mMaxGameControllerButtons;
25 ::ll::TypedStorage<1, 1, bool> mIsActive;
26 ::ll::TypedStorage<8, 24, ::std::vector<void const*>> mConsumerRegistry;
27 ::ll::TypedStorage<4, 4, ::ControllerRefreshState> mControllerRefreshState;
28 ::ll::TypedStorage<1, 1, uchar> mClientControllerCount;
29 ::ll::TypedStorage<8, 64, ::std::function<::GameControllerErrorType()>>
30 mPlatformSpecificControllerErrorRetrievalFunc;
38 virtual ::std::weak_ptr<::IGameController> getGameController(
int id) ;
40 virtual ::std::vector<::std::weak_ptr<::IGameController>> getConnectedGameControllers() ;
42 virtual ::std::vector<::std::weak_ptr<::IGameController>> getGameControllersInUse() ;
44 virtual bool hasAdequateConnectedGameController() const ;
46 virtual
bool hasAdequateConnectedGameControllers(uint64 const playerCount) const ;
48 virtual uint64 getMaxGameControllerButtons() const ;
50 virtual
void registerConsumer(
void const* token) ;
52 virtual
void unregisterConsumer(
void const* token) ;
54 virtual
void setControllerRefreshState(::ControllerRefreshState state) ;
56 virtual ::ControllerRefreshState getControllerRefreshState() const ;
58 virtual ::GameControllerErrorType getPlatformSpecificControllerError() const ;
61 setPlatformSpecificControllerErrorRetrievalFunc(::
std::function<::GameControllerErrorType()>&& lambda) ;
63 virtual
void resetClientControllerCount() ;
65 virtual
void addClientHasAdequateConnectedController(
int,
bool const, ::SubClientId) ;
74 feedButton(
int gameControllerId,
int buttonId, ::GameControllerButtonState buttonState,
bool allowRemapping);
76 MCAPI
void feedChangeUser(
int gameControllerId,
bool restrictToControllerIdChange);
78 MCAPI
void feedJoinGame(
int gameControllerId,
bool isConfirmation);
80 MCAPI
void feedStick(
int gameControllerId,
int stickId, ::GameControllerStickState state,
float x,
float y);
82 MCAPI
void feedTrigger(
int gameControllerId,
int triggerId,
float magnitude);
84 MCAPI
void setGameControllerConnected(
int gameControllerId,
bool isConnected);
108 MCAPI
bool $hasAdequateConnectedGameController() const;
110 MCAPI
bool $hasAdequateConnectedGameControllers(uint64 const playerCount) const;
112 MCFOLD uint64 $getMaxGameControllerButtons() const;
114 MCAPI
void $registerConsumer(
void const* token);
116 MCAPI
void $unregisterConsumer(
void const* token);
118 MCFOLD
void $setControllerRefreshState(::ControllerRefreshState state);
120 MCFOLD ::ControllerRefreshState $getControllerRefreshState() const;
122 MCAPI ::GameControllerErrorType $getPlatformSpecificControllerError() const;
124 MCAPI
void $setPlatformSpecificControllerErrorRetrievalFunc(::
std::function<::GameControllerErrorType()>&& lambda);
126 MCAPI
void $resetClientControllerCount();
Definition GameControllerManager.h:5
static MCAPI void ** $vftable()
Definition GameController.h:5
Definition IGameControllerManager.h:5
Definition IGameController.h:5