public DeviceManager(ILogger logger, List<DeviceProvider> deviceProviders)
{
_logger = logger;
_generalSettings = SettingsProvider.Load<GeneralSettings>();
KeyboardProviders = deviceProviders.Where(d => d.Type == DeviceType.Keyboard)
.Cast<KeyboardProvider>().ToList();
MiceProviders = deviceProviders.Where(d => d.Type == DeviceType.Mouse).ToList();
HeadsetProviders = deviceProviders.Where(d => d.Type == DeviceType.Headset).ToList();
GenericProviders = deviceProviders.Where(d => d.Type == DeviceType.Generic).ToList();
MousematProviders = deviceProviders.Where(d => d.Type == DeviceType.Mousemat).ToList();
_logger.Info("Intialized DeviceManager with {0} device providers", deviceProviders.Count);
}