Navigation
API > API/Plugins > API/Plugins/EnhancedInput
Includes native functionality shared between all subsystems.
| Name | IEnhancedInputSubsystemInterface |
| Type | class |
| Header File | /Engine/Plugins/EnhancedInput/Source/EnhancedInput/Public/EnhancedInputSubsystemInterface.h |
| Include Path | #include "EnhancedInputSubsystemInterface.h" |
Syntax
class IEnhancedInputSubsystemInterface
Derived Classes
- UEnhancedInputEditorSubsystem
- UEnhancedInputLocalPlayerSubsystem
- UEnhancedInputWorldSubsystem
- UInputVCamSubsystem
Structs
| Name | Remarks |
|---|---|
| FInjectedKeyData | Data storing the state of input values we inject for specific FKeys |
Variables
Protected
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| AppliedContextRedirects | TMap< TObjectPtr< const UInputMappingContext >, TObjectPtr< const UInputMappingContext > > | A map of the currently applied mapping context redirects. | EnhancedInputSubsystemInterface.h | |
| bControlMappingsRebuiltThisTick | bool | If true then the control mappings have been rebuilt on this frame. | EnhancedInputSubsystemInterface.h | |
| bIgnoreAllPressedKeysUntilReleaseOnRebuild | bool | A flag that will be set when adding/removing a mapping context. | EnhancedInputSubsystemInterface.h | |
| bMappingRebuildPending | bool | EnhancedInputSubsystemInterface.h | ||
| ChordedActionDependencies | TMap< TObjectPtr< const UInputAction >, TObjectPtr< const UInputAction > > | A map of input actions with a Chorded trigger, mapped to the action they are dependent on. | EnhancedInputSubsystemInterface.h | |
| ForcedActions | TMap< TWeakObjectPtr< const UInputAction >, FInputActionValue > | EnhancedInputSubsystemInterface.h | ||
| ForcedKeys | TMap< FKey, FInjectedKeyData > | Map of FKey's to any input data that we are injecting to the player right now. | EnhancedInputSubsystemInterface.h | |
| MappingRebuildPending | EInputMappingRebuildType | EnhancedInputSubsystemInterface.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual void AddMappingContext
(
const UInputMappingContext* MappingContext, |
Add a control mapping context. | EnhancedInputSubsystemInterface.h |
|
virtual void AddTagToInputMode
(
const FGameplayTag& TagToAdd, |
Adds the given "TagToAdd" to the current input mode tag container and triggers a rebuild of control mappings. | EnhancedInputSubsystemInterface.h |
|
virtual void AppendTagsToInputMode
(
const FGameplayTagContainer& TagsToAdd, |
Appends the given "TagsToAdd" to the current input mode tag container and triggers a rebuild of control mappings. | EnhancedInputSubsystemInterface.h |
|
virtual void ClearAllMappings() |
Remove all applied mapping contexts. | EnhancedInputSubsystemInterface.h |
|
virtual TArray< FEnhancedActionKeyMapping > GetAllPlayerMappableActionKeyMappings() |
Get an array of the currently applied key mappings that are marked as Player Mappable. | EnhancedInputSubsystemInterface.h |
|
virtual FGameplayTagContainer GetInputMode () |
Returns the current input mode set on Enhanced Input. | EnhancedInputSubsystemInterface.h |
|
UEnhancedPlayerInput * GetPlayerInput() |
EnhancedInputSubsystemInterface.h | ||
virtual UEnhancedInputUserSettings * GetUserSettings() |
EnhancedInputSubsystemInterface.h |
|
|
bool HasContinuousInputInjectionForAction
(
const UInputAction* Action |
Determines if there is a continuous input injection for the given action. | EnhancedInputSubsystemInterface.h | |
virtual bool HasMappingContext
(
const UInputMappingContext* MappingContext, |
Check if a mapping context is applied to this subsystem's owner. | EnhancedInputSubsystemInterface.h |
|
virtual bool HasMappingContext
(
const UInputMappingContext* MappingContext |
Check if a mapping context is applied to this subsystem's owner. | EnhancedInputSubsystemInterface.h | |
virtual void InjectInputForAction
(
const UInputAction* Action, |
Input simulation via injection. | EnhancedInputSubsystemInterface.h |
|
virtual void InjectInputForPlayerMapping
(
UPARAM(Meta=(GetOptions="EnhancedInput.PlayerMappableKeySettings.GetKnownMappingNames")) const FName..., |
Input simulation via injection. | EnhancedInputSubsystemInterface.h |
|
virtual void InjectInputVectorForAction
(
const UInputAction* Action, |
Input simulation via injection. | EnhancedInputSubsystemInterface.h |
|
virtual void InjectInputVectorForPlayerMapping
(
UPARAM(Meta=(GetOptions="EnhancedInput.PlayerMappableKeySettings.GetKnownMappingNames")) const FName..., |
Input simulation via injection. | EnhancedInputSubsystemInterface.h |
|
virtual TArray< FKey > QueryKeysMappedToAction
(
const UInputAction* Action |
Returns the keys mapped to the given action in the active input mapping contexts. | EnhancedInputSubsystemInterface.h |
|
virtual EMappingQueryResult QueryMapKeyInActiveContextSet
(
const UInputMappingContext* InputContext, |
Check if a key mapping is safe to add to a given mapping context within the set of active contexts currently applied to the player controller. | EnhancedInputSubsystemInterface.h |
|
virtual EMappingQueryResult QueryMapKeyInContextSet
(
const TArray< UInputMappingContext* >& PrioritizedActiveContexts, |
Check if a key mapping is safe to add to a collection of mapping contexts | EnhancedInputSubsystemInterface.h |
|
virtual void RemoveMappingContext
(
const UInputMappingContext* MappingContext, |
Remove a specific control context. This is safe to call even if the context is not applied. | EnhancedInputSubsystemInterface.h |
|
virtual void RemoveTagFromInputMode
(
const FGameplayTag& TagToRemove, |
Removes the given tag from the current input mode and triggers a rebuild of control mappings. | EnhancedInputSubsystemInterface.h |
|
virtual void RemoveTagsFromInputMode
(
const FGameplayTagContainer& TagsToRemove, |
Removes tags from the current input mode and triggers a rebuild of control mappings. | EnhancedInputSubsystemInterface.h |
|
virtual void RequestRebuildControlMappings
(
const FModifyContextOptions& Options, |
Flag player for reapplication of all mapping contexts at the end of this frame. | EnhancedInputSubsystemInterface.h |
|
virtual void SetInputMode
(
const FGameplayTagContainer& NewMode, |
Sets the current input mode on the player and triggers a rebuild of control mappings. | EnhancedInputSubsystemInterface.h |
|
virtual void StartContinuousInputInjectionForAction
(
const UInputAction* Action, |
Starts simulation of input via injection. | EnhancedInputSubsystemInterface.h |
|
virtual void StartContinuousInputInjectionForPlayerMapping
(
UPARAM(Meta=(GetOptions="EnhancedInput.PlayerMappableKeySettings.GetKnownMappingNames")) const FName..., |
Starts simulation of input via injection. | EnhancedInputSubsystemInterface.h |
|
virtual void StopContinuousInputInjectionForAction
(
const UInputAction* Action |
Stops continuous input injection for the given action. | EnhancedInputSubsystemInterface.h |
|
virtual void StopContinuousInputInjectionForPlayerMapping
(
UPARAM(Meta=(GetOptions="EnhancedInput.PlayerMappableKeySettings.GetKnownMappingNames")) const FName... |
Stops continuous input injection for the given player mapping name. | EnhancedInputSubsystemInterface.h |
|
virtual void UpdateValueOfContinuousInputInjectionForAction
(
const UInputAction* Action, |
Update the value of a continuous input injection, preserving the state of triggers and modifiers. | EnhancedInputSubsystemInterface.h |
|
virtual void UpdateValueOfContinuousInputInjectionForPlayerMapping
(
UPARAM(Meta=(GetOptions="EnhancedInput.PlayerMappableKeySettings.GetKnownMappingNames")) const FName..., |
Update the value of a continuous input injection for the given player mapping name, preserving the state of triggers and modifiers. | EnhancedInputSubsystemInterface.h |
|
void ValidateTrackedMappingContextsAreUnregistered() |
Logs warnings for any currently applied Input Mapping Contexts that have a tracked RegistrationTrackingMode to detect leaks | EnhancedInputSubsystemInterface.h |
Protected
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual void BindUserSettingDelegates() |
Binds to any delegates of interest on the UEnhancedInputUserSettings if they are enabled in the developer settings. | EnhancedInputSubsystemInterface.h | |
virtual void ControlMappingsRebuiltThisFrame() |
Function that will be called when Control Mappings have been rebuilt this tick. | EnhancedInputSubsystemInterface.h | |
TMap< TObjectPtr< const UInputAction >, FInjectedInput > & GetContinuouslyInjectedInputs () |
Pure-virtual getter for the map of inputs that should be injected every frame. | EnhancedInputSubsystemInterface.h | |
| Called each tick from the Enhanced Input module. | EnhancedInputSubsystemInterface.h | ||
virtual void InitalizeUserSettings () |
Create a new user settings object if it is enabled in the EI developer settings. | EnhancedInputSubsystemInterface.h | |
virtual void OnUserKeyProfileChanged
(
const UEnhancedPlayerMappableKeyProfile* InNewProfile |
A callback for when the user has applied a new mappable key profile. | EnhancedInputSubsystemInterface.h | |
virtual void OnUserSettingsChanged
(
UEnhancedInputUserSettings* Settings |
Callback for when any Enhanced Input user settings have been changed (a new key mapping for example) | EnhancedInputSubsystemInterface.h | |
void ShowMappingContextDebugInfo
(
UCanvas* Canvas, |
Helper function to display debug about mapping context info | EnhancedInputSubsystemInterface.h | |
void TickForcedInput
(
float DeltaTime |
Ticks any forced/injected input to the subsystem's player input. | EnhancedInputSubsystemInterface.h |
Static
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
static void GetAllRelevantInputModifiersForDebug
(
const UEnhancedPlayerInput* PlayerInput, |
Gather any UInputModifiers on the given Player Input and Instance data that need to be visualized for debugging. | EnhancedInputSubsystemInterface.h | |
static void PurgeDebugVisualizations() |
EnhancedInputSubsystemInterface.h |