void HandleClient(object obj) { try { using (TcpClient client = (TcpClient)obj) using (NetworkStream stream = client.GetStream()) { while (isConnected) { try { long timeStamp = 0; string receivedData = ReadLine(stream); string parsedCommand = ParseCommand(receivedData); SCIPCommands command = (SCIPCommands)Enum.Parse(typeof(SCIPCommands), parsedCommand); switch (command) { case SCIPCommands.QT: distances.Clear(); intensities.Clear(); isConnected = false; break; case SCIPCommands.MD: distances.Clear(); SCIP_Reader.MD(receivedData, ref timeStamp, ref distances); break; case SCIPCommands.GD: distances.Clear(); SCIP_Reader.GD(receivedData, ref timeStamp, ref distances); break; case SCIPCommands.ME: distances.Clear(); intensities.Clear(); SCIP_Reader.ME(receivedData, ref timeStamp, ref distances, ref intensities); break; default: Debug.Log(receivedData); isConnected = false; break; } } catch (Exception e) { Debug.LogException(e); } } } } catch (Exception e) { Debug.LogException(e); } }
private void HandleClientComm(object obj) { try { using (TcpClient client = (TcpClient)obj) { using (NetworkStream stream = client.GetStream()) { // NetworkStream clientStream = client.GetStream(); while (true) { long time_stamp = 0; string receive_data = read_line(stream); // messageQueue.Enqueue( receive_data ); string cmd = GetCommand(receive_data); if (cmd == GetCMDString(CMD.MD)) { distances.Clear(); SCIP_Reader.MD(receive_data, ref time_stamp, ref distances); } else if (cmd == GetCMDString(CMD.ME)) { distances.Clear(); strengths.Clear(); SCIP_Reader.ME(receive_data, ref time_stamp, ref distances, ref strengths); } else { Debug.Log(">>" + receive_data); } } // client.Close(); } } } catch (System.Exception ex) { Debug.LogWarning("error: " + ex); } }