/Engine/Source/Runtime/InteractiveToolsFramework/Public/BaseBehaviors/InputBehaviorModifierStates.h
We don't know ahead of time what might be used to determine modifier state, which input devices might be used, etc. So the user has to register (ModifierID,ModifierTestFunction) pairs. The behavior then callsUpdateModifiers()which will query each of the test functions and notify the target object about the state of the modifier.
class FInputBehaviorModifierStates
TArray< int >
ModifierIDs
List of modifier IDs that have been registered
TMap< int,FMod...
ModifierTests
The modifier test function for each ID