using System;
using Framework.Services;
namespace Framework.Input.Profiles {
/// Manages the type of devices the game expects input from
[
ServiceScope(Scope.Global),
DefaultBinding(typeof(InputSelector))
]
public interface IInputSelector {
#if INPUT_SOURCE_CAN_EVER_BE_SWITCHED
/// Triggered when the input profile has been switched
event Action SourceChanged;
#endif // INPUT_SOURCE_CAN_EVER_BE_SWITCHED
/// Currently active source of inputs
InputSources ActiveSource { get; }
/// Changes the active source of inputs
/// New source inputs will be taken from
void Switch(InputSources newSource);
}
} // namespace Framework.Input.Profiles