5#include <android/input.h>
6#include <android/keycodes.h>
7#include <android/api-level.h>
15#if __ANDROID_API__ < 13
153#define MAX_NUM_CONTROLLERS 8
154#define MAX_NUM_PHYSICAL_CONTROLLER_BUTTONS 18
155#define MAX_NUM_VIRTUAL_CONTROLLER_BUTTONS 8
156#define MAX_NUM_CONTROLLER_BUTTONS MAX_NUM_PHYSICAL_CONTROLLER_BUTTONS + MAX_NUM_VIRTUAL_CONTROLLER_BUTTONS
157#define MAX_DEFERRED_MESSAGE_QUEUE_SIZE 128
341 static void RemoveInputDevice(
int32 DeviceId);
342 static void DumpInputDevices();
351 static int32 FindControllerId(
int32 DeviceId);
354 void UpdateVibeMotors();
377 MouseEventType EventType;
392 static int32 CurrentVibeIntensity;
394 static int32 MaxVibeTime;
395 static double LastVibeUpdateTime;
399 static bool bAllowControllers;
402 static bool bControllersBlockDeviceFeedback;
405 static bool bBlockAndroidKeysOnControllers;
412 static FName InputClassName_DefaultMobileTouch;
413 static FName InputClassName_DefaultGamepad;
415 static FString HardwareDeviceIdentifier_DefaultMobileTouch;
416 static FString HardwareDeviceIdentifier_DefaultGamepad;
420 static float InitialButtonRepeatDelay;
421 static float ButtonRepeatDelay;
424 static int32 DeferredMessageQueueLastEntryIndex;
425 static int32 DeferredMessageQueueDroppedCount;
EGLSurface EGLint const EGLint EGLnsecsANDROID * values
Definition AndroidOpenGLFunctions.h:11
EInputDeviceConnectionState
Definition CoreMiscDefines.h:594
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
UE::FPlatformRecursiveMutex FCriticalSection
Definition CriticalSection.h:53
void Init()
Definition LockFreeList.h:4
Definition NameTypes.h:617
Definition UnrealString.h.inl:34
Definition SharedPointer.h:153
Definition AndroidInputInterface.h:160
double NextRepeatTime[MAX_NUM_CONTROLLER_BUTTONS]
Definition AndroidInputInterface.h:166
float LXAnalog
Definition AndroidInputInterface.h:169
float RYAnalog
Definition AndroidInputInterface.h:172
bool ButtonStates[MAX_NUM_CONTROLLER_BUTTONS]
Definition AndroidInputInterface.h:165
float RXAnalog
Definition AndroidInputInterface.h:171
float RTAnalog
Definition AndroidInputInterface.h:174
int32 DeviceId
Definition AndroidInputInterface.h:162
float LTAnalog
Definition AndroidInputInterface.h:173
float LYAnalog
Definition AndroidInputInterface.h:170
Definition AndroidInputInterface.h:178
FForceFeedbackValues VibeValues
Definition AndroidInputInterface.h:179
double LastVibeUpdateTime
Definition AndroidInputInterface.h:182
int32 RightIntensity
Definition AndroidInputInterface.h:181
int32 LeftIntensity
Definition AndroidInputInterface.h:180
Definition AndroidInputInterface.h:186
bool TriggersUseThresholdForClick
Definition AndroidInputInterface.h:220
float RTAnalogRangeMinimum
Definition AndroidInputInterface.h:214
FAndroidGamepadDeviceMapping()
Definition AndroidInputInterface.h:187
bool RightStickZRZ
Definition AndroidInputInterface.h:229
FAndroidControllerVibeState ControllerVibeState
Definition AndroidInputInterface.h:239
ButtonRemapType ButtonRemapping
Definition AndroidInputInterface.h:210
bool RightStickRXRY
Definition AndroidInputInterface.h:232
FAndroidGamepadDeviceMapping(const FName DeviceName)
Definition AndroidInputInterface.h:192
bool MapRXRYToTriggers
Definition AndroidInputInterface.h:235
bool MapL1R1ToTriggers
Definition AndroidInputInterface.h:223
float LTAnalogRangeMinimum
Definition AndroidInputInterface.h:213
FAndroidControllerData OldControllerData
Definition AndroidInputInterface.h:237
bool SupportsHat
Definition AndroidInputInterface.h:217
void Init(const FName DeviceName)
void ResetRuntimeData()
Definition AndroidInputInterface.h:199
FAndroidControllerData NewControllerData
Definition AndroidInputInterface.h:238
ControllerClassType ControllerClass
Definition AndroidInputInterface.h:207
bool MapZRZToTriggers
Definition AndroidInputInterface.h:226
Definition AndroidInputInterface.h:249
FAndroidMessageType messageType
Definition AndroidInputInterface.h:252
FDeferredAndroidMessage()
Definition AndroidInputInterface.h:250
bool isRepeat
Definition AndroidInputInterface.h:260
int32 keyId
Definition AndroidInputInterface.h:257
int32 unichar
Definition AndroidInputInterface.h:258
uint32 modifier
Definition AndroidInputInterface.h:259
struct FDeferredAndroidMessage::@42::@44 KeyEventData
Definition IInputInterface.h:26
Definition IInputInterface.h:70
static UE_FORCEINLINE_HINT void * Memset(void *Dest, uint8 Char, SIZE_T Count)
Definition UnrealMemory.h:119