Navigation
API > API/Runtime > API/Runtime/Engine
The input device subsystem provides an interface to allow users to set Input Device Properties on any Platform User.
| Name | UInputDeviceSubsystem |
| Type | class |
| Header File | /Engine/Source/Runtime/Engine/Classes/GameFramework/InputDeviceSubsystem.h |
| Include Path | #include "GameFramework/InputDeviceSubsystem.h" |
Syntax
UCLASS (BlueprintType, MinimalAPI)
class UInputDeviceSubsystem :
public UEngineSubsystem ,
public FTickableGameObject
Inheritance Hierarchy
- FTickableObjectBase → FTickableGameObject → UInputDeviceSubsystem
- UObjectBase → UObjectBaseUtility → UObject → USubsystem → UDynamicSubsystem → UEngineSubsystem → UInputDeviceSubsystem
Structs
| Name | Remarks |
|---|---|
| FLatestInputDeviceData | Data store about the input device that was most recently used by a specific FPlatformUserId |
| FResetPIEData |
Variables
Public
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| OnInputHardwareDeviceChanged | FHardwareInputDeviceChanged | A delegate that is fired when a platform user changes what Hardware Input device they are using | GameFramework/InputDeviceSubsystem.h |
|
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
FInputDevicePropertyHandle ActivateDeviceProperty
(
UInputDeviceProperty* Property, |
Starts tracking the given device property as an "Active" property. | GameFramework/InputDeviceSubsystem.h | |
FInputDevicePropertyHandle ActivateDevicePropertyOfClass
(
TSubclassOf< UInputDeviceProperty > PropertyClass, |
Spawn a new instance of the given device property class and activate it. | GameFramework/InputDeviceSubsystem.h |
|
UInputDeviceProperty * GetActiveDeviceProperty
(
const FInputDevicePropertyHandle Handle |
Returns a pointer to the active input device property with the given handle. | GameFramework/InputDeviceSubsystem.h |
|
FHardwareDeviceIdentifier GetInputDeviceHardwareIdentifier
(
const FInputDeviceId InputDevice |
GameFramework/InputDeviceSubsystem.h |
|
|
FInputDeviceId GetLatestDeviceOfType
(
const FPlatformUserId InUserId, |
Returns the latest used input device for a specific type of hardware | GameFramework/InputDeviceSubsystem.h | |
FHardwareDeviceIdentifier GetMostRecentlyUsedHardwareDevice
(
const FPlatformUserId InUserId |
Gets the most recently used hardware input device for the given platform user | GameFramework/InputDeviceSubsystem.h |
|
FInputDeviceId GetMostRecentlyUsedInputDeviceId
(
const FPlatformUserId InUserId, |
Returns the most recently used FInputDeviceId for the given platform user id. | GameFramework/InputDeviceSubsystem.h |
|
bool IsPropertyActive
(
const FInputDevicePropertyHandle Handle |
Returns true if the property associated with the given handle is currently active, and it is not pending removal | GameFramework/InputDeviceSubsystem.h |
|
void RemoveAllDeviceProperties() |
Removes all the current Input Device Properties that are active, regardless of the Platform User | GameFramework/InputDeviceSubsystem.h |
|
void RemoveDevicePropertyByHandle
(
const FInputDevicePropertyHandle HandleToRemove |
Remove a single device property based on it's handle | GameFramework/InputDeviceSubsystem.h |
|
void RemoveDevicePropertyHandles
(
const TSet< FInputDevicePropertyHandle >& HandlesToRemove |
Remove a set of device properties based on their handles. | GameFramework/InputDeviceSubsystem.h |
|
Overridden from USubsystem
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual void Deinitialize() |
Implement this for deinitialization of instances of the system | GameFramework/InputDeviceSubsystem.h | |
virtual void Initialize
(
FSubsystemCollectionBase& Collection |
Implement this for initialization of instances of the system | GameFramework/InputDeviceSubsystem.h | |
virtual bool ShouldCreateSubsystem
(
UObject* Outer |
Override to control if the Subsystem should be created at all. | GameFramework/InputDeviceSubsystem.h |
Overridden from FTickableGameObject
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual UWorld * GetTickableGameObjectWorld () |
Used to determine the specific world this object is associated with. | GameFramework/InputDeviceSubsystem.h | |
virtual bool IsTickableInEditor () |
Used to determine whether the object should be ticked in the editor when there is no gameplay world. | GameFramework/InputDeviceSubsystem.h |
Overridden from FTickableObjectBase
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual TStatId GetStatId() |
Return the stat id used to track the performance of this object | GameFramework/InputDeviceSubsystem.h | |
virtual ETickableTickType GetTickableTickType () |
Virtual that can be overloaded by the inheriting class and is called before first tick. | GameFramework/InputDeviceSubsystem.h | |
virtual bool IsTickable () |
Virtual that can be overloaded by the inheriting class. | GameFramework/InputDeviceSubsystem.h | |
virtual void Tick
(
float DeltaTime |
Pure virtual that must be overloaded by the inheriting class. | GameFramework/InputDeviceSubsystem.h |
Protected
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
void OnPIEPaused
(
bool bSimulating |
GameFramework/InputDeviceSubsystem.h | ||
void OnPIEResumed
(
bool bSimulating |
GameFramework/InputDeviceSubsystem.h | ||
void OnPIEStopped
(
bool bSimulating |
GameFramework/InputDeviceSubsystem.h | ||
void OnPrePIEStarted
(
bool bSimulating |
Callbacks for when PIE is started/stopped. | GameFramework/InputDeviceSubsystem.h | |
void SetMostRecentlyUsedHardwareDevice
(
const FInputDeviceId InDeviceId, |
Set the most recently used hardware device from the input processor | GameFramework/InputDeviceSubsystem.h |
Static
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
static UInputDeviceSubsystem * Get() |
Returns a pointer to the Input Device Engine Subsystem if it is available. | GameFramework/InputDeviceSubsystem.h |