public Device(ICommandLineParser parser, IDeviceReader deviceReader, IDeviceSorter deviceSorter, IDeviceChanger deviceChanger) { //TODO OWN Factory pls CmdParser = Required.NotNull(parser, nameof(parser)); _reader = Required.NotNull(deviceReader, nameof(deviceReader)); _sorter = Required.NotNull(deviceSorter, nameof(deviceSorter)); _changer = Required.NotNull(deviceChanger, nameof(deviceChanger)); init_modules(); }
public void Resolve(IDeviceReader deviceReader, IConflictWriter conflictWriter) { var deviceInfo = deviceReader.ReadDeviceInfo(); var groups = deviceInfo.GroupBy(d => d.Brigade.Code) .Where(g => g.Count() > 1 && g.Any(d => d.Device.IsOnline)); var conflicts = groups.Select(g => new Conflict { BrigadeCode = g.Key, DevicesSerials = g.Select(d => d.Device.SerialNumber).ToArray() }).ToArray(); conflictWriter.WriteConflicts(conflicts); }
public void LoadDevices() { IDeviceReader deviceReader = Container.Resolve <IDeviceReader>(); DeviceManager deviceManager = Container.Resolve <DeviceManager>(); DeviceModelList deviceModels = deviceReader.ReadDevices(); List <IStreamDeckRefHandle> deckRefHandles = StreamDeck.EnumerateDevices().ToList(); //TODO Add support for multuple devices var deviceModel = deviceModels.First(); foreach (IStreamDeckRefHandle streamDeckRefHandle in deckRefHandles) { deviceModel.Info.HardwareId = streamDeckRefHandle.DevicePath; IStreamDeckBoard board = streamDeckRefHandle.Open(); deviceManager.AddDevice(board, deviceModel); } }
public Dictionary <PROPERTIES, object> GetProps(string deviceOrGroupName, PROPERTIES properties) { IDeviceReader device = GetReaderDevice(deviceOrGroupName); return(device.GetProps(properties).Result); }
public object GetProp(string deviceOrGroupName, PROPERTIES property) { IDeviceReader device = GetReaderDevice(deviceOrGroupName); return(device.GetProp(property).Result); }
public Dictionary <PROPERTIES, object> GetAllProps(string deviceOrGroupName) { IDeviceReader device = GetReaderDevice(deviceOrGroupName); return(device.GetAllProps().Result); }
public async Task <Dictionary <PROPERTIES, object> > GetProps(string deviceOrGroupName, PROPERTIES properties) { IDeviceReader device = _all[deviceOrGroupName] as IDeviceReader; return(await device.GetProps(properties)); }
public async Task <object> GetProp(string deviceOrGroupName, PROPERTIES property) { IDeviceReader device = _all[deviceOrGroupName] as IDeviceReader; return(await device.GetProp(property)); }
private Device create_device(ICommandLineParser parser, IDeviceReader reader, IDeviceSorter sorter, IDeviceChanger changer) => new Device(parser, reader, sorter, changer);