UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
FAppleControllerInterface Class Reference

#include <AppleControllerInterface.h>

+ Inheritance diagram for FAppleControllerInterface:

Classes

struct  FUserController
 

Public Member Functions

virtual ~FAppleControllerInterface ()
 
void SetMessageHandler (const TSharedRef< FGenericApplicationMessageHandler > &InMessageHandler)
 
void Tick (float DeltaTime)
 
void SendControllerEvents ()
 
virtual void SetForceFeedbackChannelValue (int32 ControllerId, FForceFeedbackChannelType ChannelType, float Value) override
 
virtual void SetForceFeedbackChannelValues (int32 ControllerId, const FForceFeedbackValues &values) override
 
virtual void SetLightColor (int32 ControllerId, FColor Color) override
 
virtual void ResetLightColor (int32 ControllerId) override
 
bool IsControllerAssignedToGamepad (int32 ControllerId) const
 
bool IsGamepadAttached () const
 
const ControllerType GetControllerType (uint32 ControllerIndex)
 
void SetControllerType (uint32 ControllerIndex)
 
FName GetControllerTypeName (const ControllerType InControllerType)
 
GCControllerButtonInputGetGCControllerButton (const FGamepadKeyNames::Type &ButtonKey, uint32 ControllerIndex)
 
void HandleInputInternal (const FGamepadKeyNames::Type &UEButton, uint32 ControllerIndex, bool bIsPressed, bool bWasPressed)
 
void HandleButtonGamepad (const FGamepadKeyNames::Type &UEButton, uint32 ControllerIndex)
 
void HandleAnalogGamepad (const FGamepadKeyNames::Type &UEAxis, uint32 ControllerIndex)
 
void HandleVirtualButtonGamepad (const FGamepadKeyNames::Type &UEButtonNegative, const FGamepadKeyNames::Type &UEButtonPositive, uint32 ControllerIndex)
 
- Public Member Functions inherited from IInputInterface
virtual ~IInputInterface ()
 
virtual void SetHapticFeedbackValues (int32 ControllerId, int32 Hand, const FHapticFeedbackValues &Values)
 
virtual void SetDeviceProperty (int32 ControllerId, const FInputDeviceProperty *Property)
 

Static Public Member Functions

static TSharedRef< FAppleControllerInterfaceCreate (const TSharedRef< FGenericApplicationMessageHandler > &InMessageHandler)
 
static TSharedPtr< FAppleControllerInterfaceGet ()
 

Protected Member Functions

 FAppleControllerInterface (const TSharedRef< FGenericApplicationMessageHandler > &InMessageHandler)
 
void SignalEvent (EAppleControllerEventType InEventType, GCController *InController)
 

Protected Attributes

TSharedRef< FGenericApplicationMessageHandlerMessageHandler
 
FCriticalSection DeferredEventCS
 
TArray< FDeferredAppleControllerEventDeferredEvents
 
FUserController Controllers [4]
 
TMap< FName, doubleNextKeyRepeatTime
 
bool bAllowControllers
 

Static Protected Attributes

static FString HardwareDeviceIdentifier_DefaultGamepad
 

Detailed Description

Interface class for Apple Controllers

Constructor & Destructor Documentation

◆ ~FAppleControllerInterface()

virtual FAppleControllerInterface::~FAppleControllerInterface ( )
inlinevirtual

◆ FAppleControllerInterface()

FAppleControllerInterface::FAppleControllerInterface ( const TSharedRef< FGenericApplicationMessageHandler > &  InMessageHandler)
protected

Member Function Documentation

◆ Create()

TSharedRef< FAppleControllerInterface > FAppleControllerInterface::Create ( const TSharedRef< FGenericApplicationMessageHandler > &  InMessageHandler)
static

◆ Get()

static TSharedPtr< FAppleControllerInterface > FAppleControllerInterface::Get ( )
static

◆ GetControllerType()

const ControllerType FAppleControllerInterface::GetControllerType ( uint32  ControllerIndex)

◆ GetControllerTypeName()

FName FAppleControllerInterface::GetControllerTypeName ( const ControllerType  InControllerType)

◆ GetGCControllerButton()

GCControllerButtonInput * FAppleControllerInterface::GetGCControllerButton ( const FGamepadKeyNames::Type ButtonKey,
uint32  ControllerIndex 
)

◆ HandleAnalogGamepad()

void FAppleControllerInterface::HandleAnalogGamepad ( const FGamepadKeyNames::Type UEAxis,
uint32  ControllerIndex 
)

◆ HandleButtonGamepad()

void FAppleControllerInterface::HandleButtonGamepad ( const FGamepadKeyNames::Type UEButton,
uint32  ControllerIndex 
)

◆ HandleInputInternal()

void FAppleControllerInterface::HandleInputInternal ( const FGamepadKeyNames::Type UEButton,
uint32  ControllerIndex,
bool  bIsPressed,
bool  bWasPressed 
)

◆ HandleVirtualButtonGamepad()

void FAppleControllerInterface::HandleVirtualButtonGamepad ( const FGamepadKeyNames::Type UEButtonNegative,
const FGamepadKeyNames::Type UEButtonPositive,
uint32  ControllerIndex 
)

◆ IsControllerAssignedToGamepad()

bool FAppleControllerInterface::IsControllerAssignedToGamepad ( int32  ControllerId) const

◆ IsGamepadAttached()

bool FAppleControllerInterface::IsGamepadAttached ( ) const

◆ ResetLightColor()

virtual void FAppleControllerInterface::ResetLightColor ( int32  ControllerId)
inlineoverridevirtual

Implements IInputInterface.

◆ SendControllerEvents()

void FAppleControllerInterface::SendControllerEvents ( )

Poll for controller state and send events if needed

The FInputDeviceScope::HardwareDeviceIdentifier has to be one of values in UInputPlatformSettings::HardwareDevices.

◆ SetControllerType()

void FAppleControllerInterface::SetControllerType ( uint32  ControllerIndex)

◆ SetForceFeedbackChannelValue()

virtual void FAppleControllerInterface::SetForceFeedbackChannelValue ( int32  ControllerId,
FForceFeedbackChannelType  ChannelType,
float  Value 
)
inlineoverridevirtual

Force Feedback implementation

Implements IInputInterface.

Reimplemented in FIOSInputInterface.

◆ SetForceFeedbackChannelValues()

virtual void FAppleControllerInterface::SetForceFeedbackChannelValues ( int32  ControllerId,
const FForceFeedbackValues Values 
)
inlineoverridevirtual

Sets the strength/speed of all the channels for the given controller id. NOTE: Unsupported channels are silently ignored

Parameters
ControllerIdthe id of the controller whose value is to be set
FForceFeedbackChannelValuesstrength or speed of feedback for all channels

Implements IInputInterface.

Reimplemented in FIOSInputInterface.

◆ SetLightColor()

virtual void FAppleControllerInterface::SetLightColor ( int32  ControllerId,
FColor  Color 
)
inlineoverridevirtual

Implements IInputInterface.

◆ SetMessageHandler()

void FAppleControllerInterface::SetMessageHandler ( const TSharedRef< FGenericApplicationMessageHandler > &  InMessageHandler)

◆ SignalEvent()

void FAppleControllerInterface::SignalEvent ( EAppleControllerEventType  InEventType,
GCController InController 
)
protected

◆ Tick()

void FAppleControllerInterface::Tick ( float  DeltaTime)

Tick the interface (i.e check for new controllers)

Member Data Documentation

◆ bAllowControllers

bool FAppleControllerInterface::bAllowControllers
protected

◆ Controllers

FUserController FAppleControllerInterface::Controllers[4]
protected

◆ DeferredEventCS

FCriticalSection FAppleControllerInterface::DeferredEventCS
protected

◆ DeferredEvents

TArray<FDeferredAppleControllerEvent> FAppleControllerInterface::DeferredEvents
protected

◆ HardwareDeviceIdentifier_DefaultGamepad

FString FAppleControllerInterface::HardwareDeviceIdentifier_DefaultGamepad
staticprotected

◆ MessageHandler

TSharedRef< FGenericApplicationMessageHandler > FAppleControllerInterface::MessageHandler
protected

◆ NextKeyRepeatTime

TMap<FName, double> FAppleControllerInterface::NextKeyRepeatTime
protected

The documentation for this class was generated from the following files: