Exemple #1
0
		void OnNewResponse(Response response)
		{
			if (NewResponse != null)
				NewResponse(this, response);
		}
Exemple #2
0
		void OnDataRecieved(object sender, DataRecievedEventArgs args)
		{
			if (IsDisposed)
				return;

			var buffer = args.data.ToList();
			if (buffer.Count < 2)
				return;
			buffer.RemoveRange(0, IsExtendedMode ? 3 : 2);
			foreach (var b in buffer)
			{
				if (LocalResult.Count > 0)
				{
					LocalResult.Add(b);
					if (b == 0x3E)
					{
						var bytes = CreateInputBytes(LocalResult);
						LocalResult = new List<byte>();

						var response = new Response
						{
							Bytes = bytes.ToList()
						};
						if (UseId)
						{
							response.Id = BytesHelper.ExtractInt(bytes.ToList(), 0);
						}
						OnResponseRecieved(response);
						OnNewResponse(response);
						return;
					}
				}
				if (b == 0x7E)
				{
					if (!IsExtendedMode)
					{
						if (buffer.IndexOf(0x7e) == 0)
							IsExtendedMode = false;
						if (buffer.IndexOf(0x7e) == 1)
							IsExtendedMode = true;
					}
					LocalResult = new List<byte> { b };
				}
				if (RequestCollection.Count() == 0)
					AutoWaitEvent.Set();
			}
		}
		void UsbRunner2_NewResponse(UsbHid usbHid, Response response)
		{
			Trace.WriteLine("UsbRunner2_NewResponse " + BytesHelper.BytesToString(response.Bytes));
		}
Exemple #4
0
		void OnResponseRecieved(Response response)
		{
			if (UseId)
			{
				var request = RequestCollection.GetById(response.Id);
				RequestCollection.RemoveById(response.Id);
				if (request != null)
				{
					Responses.Add(response);
				}
			}
			else
			{
				var request = RequestCollection.GetFirst();
				if (request != null)
				{
					Responses.Clear();
					Responses.Add(response);
					if (Responses.Count != 0)
						RequestCollection.Clear();
				}
			}
		}
Exemple #5
0
		static void OnNewResponse(UsbHid usbHid, Response response)
		{
			try
			{
				var usbHidInfo = UsbHidInfos.FirstOrDefault(x => x.UsbHid != null && x.UsbHid == usbHid);
				if (usbHidInfo != null)
				{
					if (NewResponse != null)
						NewResponse(usbHidInfo.USBDevice, response);
				}
			}
			catch (Exception e)
			{
				;
			}
		}