예제 #1
0
        private void HoloLensData(object sender, TcpDataReceivedEventArgs e)
        {
            Console.WriteLine(e.Data);
            var env = JsonConvert.DeserializeObject(e.Data, typeof(Envelope)) as Envelope;

            if (env.Type == typeof(HoloLensStatusMessage).Name)
            {
                var status = JsonConvert.DeserializeObject(env.Content, typeof(HoloLensStatusMessage)) as HoloLensStatusMessage;
                if (status.readyForTraffic)
                {
                    MessageBox.Show("User is ready for traffic! Choose the scenario in the DataPlayer and click Play.",
                                    "Ready", MessageBoxButton.OK, MessageBoxImage.Information);
                }
            }
            else if (env.Type == typeof(HoloLensResultMessage).Name)
            {
                var result = JsonConvert.DeserializeObject(env.Content, typeof(HoloLensResultMessage)) as HoloLensResultMessage;

                if (!File.Exists(PATH))
                {
                    using (StreamWriter sw = File.CreateText(PATH))
                    {
                        sw.WriteLine("SzenarioName\tCollide\tRightOfWay\tTurnRight\tCompassTurnRight\tTrafficStartTime\tCallDecidedTime\tAttempts\tScanningPatternResult\tScanningPatternIndividualResult");
                    }
                }
                using (StreamWriter sw = File.AppendText(PATH))
                {
                    sw.WriteLine($"{result.SzenarioName}\t{result.Collide}\t{result.RightOfWay}\t{result.Turn}\t{result.CompassTurn}\t{result.TrafficStartTicks}\t{result.CallDecidedTicks}\t{result.NumberOfAttempts}\t{result.ScanningPatternResult}\t{result.ScanningPatternIndividualResult}");
                }
            }
        }
예제 #2
0
 private void Client_DataReceived(object sender, TcpDataReceivedEventArgs e)
 {
     if (InvokeRequired)
     {
         BeginInvoke(new DelMethod(Client_DataReceived), new object[] { sender, e });
         return;
     }
     LogRX(tcpClientLog, e.GetString());
 }
예제 #3
0
 private void Client_DataReceived(object sender, TcpDataReceivedEventArgs e)
 {
     if (!ReadDataByEvent)
     {
         return;
     }
     DataReceived           = e.GetString();
     DataReceiveEventRaised = true;
     ReadDataByEvent        = false;
 }
예제 #4
0
 /// <summary>
 /// Process data received events.
 /// </summary>
 /// <param name="sender">The sender of the event.</param>
 /// <param name="e">An EventArgs object that contains the event data.</param>
 private void mTcpServer_DataReceived(object sender, TcpDataReceivedEventArgs e)
 {
     DataReceived(e.Connection, (IPEndPoint)e.Connection.Client.RemoteEndPoint, e.Data);
 }
예제 #5
0
 private void TcpClient_DataReceived(object sender, TcpDataReceivedEventArgs e)
 {
     AppendOutput(e.GetString(), Color.Lime);
 }