private void SpaceSensorProcessingThread() { while (true) { while (_spaceSensorDataQueue.Count == 0) { if (!_spaceProcessingStatus) { return; } Thread.Sleep(10); } string[] rowHeader = new string[2]; _sequenceNumber++; rowHeader[0] = _sequenceNumber.ToString(); //rowHeader[1] = String.Format("{0:hh:mm:ss.fff}", DateTime.Now); TimeSpan recordTime = DateTime.Now - _startRecordingTime; rowHeader[1] = recordTime.TotalMilliseconds.ToString(); SpaceSensorRecordingDataReceivedEventArgs args = _spaceSensorDataQueue.Dequeue(); SensorData sensor1DataObj = new SensorData(); ReadAccGyroData(args.Sensor1DataPacket, sensor1DataObj); SensorData sensor2DataObj = new SensorData(); ReadAccGyroData(args.Sensor2DataPacket, sensor2DataObj); string[] sensor1Data = ConvertSensorDataToCSV(sensor1DataObj); string[] sensor2Data = ConvertSensorDataToCSV(sensor2DataObj); if (m_CSVFileWriter != null) { logSpaceSensorCSVLineItem(new SpaceSensorCSVLineItem(rowHeader, sensor1Data, sensor2Data)); } } }
public void ReceivedSpaceSensorData(object sender, SpaceSensorRecordingDataReceivedEventArgs args) { _spaceSensorDataQueue.Enqueue(args); }