Пример #1
0
 private static void SendThread()
 {
     while (true)
     {
         lock (WriteQueue)
         {
             if (WriteQueue.Count != 0)
             {
                 WriteQueueData wqd = WriteQueue.Dequeue();
                 int res = HIDapi.hid_write(wqd.pointer, wqd.data, new UIntPtr(Convert.ToUInt32(wqd.data.Length)));
                 if (res == -1) Debug.LogError("HidAPI reports error " + res + " on write: " + Marshal.PtrToStringUni(HIDapi.hid_error(wqd.pointer)));
                 else if (Debug_Messages) Debug.Log("Sent " + res + "b: [" + wqd.data[0].ToString("X").PadLeft(2, '0') + "] " + BitConverter.ToString(wqd.data, 1));
             }
         }
         Thread.Sleep(MaxWriteFrequency);
     }
 }