public bool Read(I2CDevice.Configuration config, byte[] readBuffer, int timeoutMilliseconds) { DeviceBuffers device = GetDevice(config.Address); device.Input.ReadInto(readBuffer, 0, readBuffer.Length); return(true); }
public bool Write(I2CDevice.Configuration config, byte[] writeBuffer, int timeoutMilliseconds) { DeviceBuffers device = GetDevice(config.Address); device.Output.Append(writeBuffer); return(true); }
private DeviceBuffers GetDevice(ushort address) { Ring.IndexedLink indexedLink = _devices.Find(obj => ((DeviceBuffers)obj).Address == address); if (indexedLink != null) { return((DeviceBuffers)indexedLink.Value); } var temp = new DeviceBuffers(address); _devices.InsertTail(temp); return(temp); }
public void BufferInputFor(ushort address, params byte[] input) { DeviceBuffers deviceBuffers = GetDevice(address); deviceBuffers.Input.Append(input); }