public void PollInputBoardStates() { var stopwatch = Stopwatch.StartNew(); var inputDevices = _deviceService.GetDevices <CCToolsInputDeviceBase>(); foreach (var portExpanderController in inputDevices) { if (portExpanderController.AutomaticallyFetchState) { portExpanderController.PeekState(); } } stopwatch.Stop(); if (stopwatch.ElapsedMilliseconds > 25) { _log.Warning($"Fetching inputs took {stopwatch.ElapsedMilliseconds}ms."); } foreach (var portExpanderController in inputDevices) { if (portExpanderController.AutomaticallyFetchState) { portExpanderController.FetchState(); } } }
public void RegisterRemoteSockets() { var adapterDevices = _deviceRegistryService.GetDevices <ILdp433MhzBridgeAdapter>(); foreach (var adapterDevice in adapterDevices) { adapterDevice.CodeReceived += OnCodeReceived; } var configuration = _configurationService.GetConfiguration <RemoteSocketServiceConfiguration>("RemoteSocketService"); foreach (var remoteSocketConfiguration in configuration.RemoteSockets) { var codePair = GenerateCodePair(remoteSocketConfiguration.Value.CodeGenerator); RegisterRemoteSocket(remoteSocketConfiguration.Key, remoteSocketConfiguration.Value.Adapter.DeviceId, codePair); } }