コード例 #1
0
        private void OnLineReceived(object sender, LineReceivedEventArgs e)
        {
            string line = e.Line;

            Debug.WriteLine(line);
            lock (m_ValuesBuffer.SyncObject)
            {
                string[] stringParts = line.Split('\t');

                DateTime timeStamp = DateTime.Now;

                int      valuesCount    = stringParts.Length;
                double[] receivedValues = new double[valuesCount];

                for (int i = 0; i < valuesCount; i++)
                {
                    double receivedValue = double.Parse(stringParts[i], CultureInfo.InvariantCulture);
                    receivedValues[i] = receivedValue * 180.0 / Math.PI;
                }

                //receivedValues[1] += 1;

                //if (m_ValuesBuffer.Count > 1)
                //{
                //    // In order to accomplish sample and hold behavior we insert the old values with the new time stamp first
                //    TimeStampedValue<double[]> previousTimeStampedValue = m_ValuesBuffer[m_ValuesBuffer.Count - 1];
                //    TimeStampedValue<double[]> sampleAndHoldTimeStampedValue =
                //        new TimeStampedValue<double[]>(timeStamp, previousTimeStampedValue.Value);
                //    m_ValuesBuffer.Add(sampleAndHoldTimeStampedValue);
                //}

                TimeStampedValue <double[]> timeStampedValue = new TimeStampedValue <double[]>(timeStamp, receivedValues);
                m_ValuesBuffer.Add(timeStampedValue);
            }
        }
コード例 #2
0
        private void RaiseLineReceivedEvent(string line)
        {
            // Make a temporary copy of the event handler to avoid the possibility of
            // a race condition if the last subscriber unsubscribes
            // immediately after the null check and before the event is raised.
            EventHandler <LineReceivedEventArgs> handler = LineReceived;

            // Event will be null if there are no subscribers
            if (handler != null)
            {
                LineReceivedEventArgs eventArgs = new LineReceivedEventArgs(line);
                handler(this, eventArgs);
            }
        }
コード例 #3
0
		private void OnLineReceived(object sender, LineReceivedEventArgs e)
		{
			string line = e.Line;
			Debug.WriteLine(line);
			lock (m_ValuesBuffer.SyncObject)
			{
				string[] stringParts = line.Split('\t');

				DateTime timeStamp = DateTime.Now;
				
				int valuesCount = stringParts.Length;
				double[] receivedValues = new double[valuesCount];

				for (int i = 0; i < valuesCount; i++)
				{
					double receivedValue = double.Parse(stringParts[i], CultureInfo.InvariantCulture);
					receivedValues[i] = receivedValue * 180.0 / Math.PI;
				}

				//receivedValues[1] += 1;

				//if (m_ValuesBuffer.Count > 1)
				//{
				//    // In order to accomplish sample and hold behavior we insert the old values with the new time stamp first
				//    TimeStampedValue<double[]> previousTimeStampedValue = m_ValuesBuffer[m_ValuesBuffer.Count - 1];
				//    TimeStampedValue<double[]> sampleAndHoldTimeStampedValue =
				//        new TimeStampedValue<double[]>(timeStamp, previousTimeStampedValue.Value);
				//    m_ValuesBuffer.Add(sampleAndHoldTimeStampedValue);
				//}

				TimeStampedValue<double[]> timeStampedValue = new TimeStampedValue<double[]>(timeStamp, receivedValues);
				m_ValuesBuffer.Add(timeStampedValue);
			}
		}
コード例 #4
0
		private void RaiseLineReceivedEvent(string line)
		{
			// Make a temporary copy of the event handler to avoid the possibility of
			// a race condition if the last subscriber unsubscribes
			// immediately after the null check and before the event is raised.
			EventHandler<LineReceivedEventArgs> handler = LineReceived;

			// Event will be null if there are no subscribers
			if (handler != null)
			{
				LineReceivedEventArgs eventArgs = new LineReceivedEventArgs(line);
				handler(this, eventArgs);
			}
		}