ScpControl.Usb.UsbDevice.HidWorker C# (CSharp) Method

HidWorker() private method

Worker thread polling for incoming Usb interrupts.
private HidWorker ( object o ) : void
o object Task cancellation token.
return void
        private void HidWorker(object o)
        {
            var token = (CancellationToken) o;
            var transfered = 0;
            var buffer = new byte[64];

            Log.Debug("-- Usb Device : HID_Worker_Thread Starting");

            while (!token.IsCancellationRequested)
            {
                try
                {
                    if (ReadIntPipe(buffer, buffer.Length, ref transfered) && transfered > 0)
                    {
                        ParseHidReport(buffer);
                    }
                }
                catch (Exception ex)
                {
                    Log.ErrorFormat("Unexpected error: {0}", ex);
                }
            }

            Log.Debug("-- Usb Device : HID_Worker_Thread Exiting");
        }