public static void WriteUsingAsyncWrite <T>(this IDevice <T> device, T value) { var wait = new AutoResetEvent(false); device .AsyncWrite(value) .Subscribe((x) => wait.Set()); wait.WaitOne(); wait.Dispose(); }
public static IObservable <Unit> AsyncWrite(this IDevice <bool> device) { return(device.AsyncWrite(device.Value)); }
public static IObservable <Unit> AsyncWriteInverse(this IDevice <bool> device) { var oldValue = device.Value; return(device.AsyncWrite(oldValue)); }