private void Sendasy(object sender, UsbReaderEventArgs e) { if (!isUSBAvailable) { return; } byte[] bBuf = e.Comd.encode(); int nTotalDataLength = bBuf.Length; lock (this) { //ClearInPoint(); if (!outEndpoint.XferData(ref bBuf, ref nTotalDataLength)) { return; } Thread.Sleep(_delayms); if (!readDataSynchronous(out bBuf)) { return; } } if (!e.Comd.decode(bBuf)) { return; } OnDataArrived(e); }
public void BeginWrite(CBase cBaseCommand, string usage, AsyncCallback callback) { EventHandler <UsbReaderEventArgs> eh = new EventHandler <UsbReaderEventArgs>(Sendasy); UsbReaderEventArgs e = new UsbReaderEventArgs(usage, cBaseCommand); eh.BeginInvoke(this, e, callback, eh); }
private void OnDataArrived(UsbReaderEventArgs e) { if (DataArrived != null) { DataArrived(this, e); } }