private void parseStream() { string line = null; if (_logFile != null) { // Populate logFileLines. for (int i = 0; ( line = _logFile.ReadLine() ) != null; i++ ) { if (line != "" && line != "AT+CGREG?" && (line.Substring(0,1).StartsWith("#") != true )) { _ar_logFileLines.Add (line); //Split lines string[] cols = line.Split (','); //Populate devi/** TODO: Populate Alarms Table */ceLogFileValues _ar_deviceLogFileEntries.Add (cols); } } /** * =============================== * New parse for temps and alarms. * =============================== * Walk through each LogFile Entry. * For each entry, walk through the Device LogFileDescription to get * the sensor codes, as well as the array index for the logfile values * for each Device LogFile Entry. */ if (_ar_logFileDescription == null) _ar_logFileDescription = new CUtillity ().CUTIL_DefaultDeviceFileDescription; for (int j = 0; j < _ar_deviceLogFileEntries.Count; j++) { for (int k = 0; k < _ar_logFileDescription.Count; k++) { CDeviceFileDescription __device_descr = (CDeviceFileDescription) _ar_logFileDescription [k]; switch (__device_descr.DeviceCode) { case "LOGTEMP": try { _ar_logTimeTemp.Add (((string[])_ar_deviceLogFileEntries [j]) [k]); } catch (IndexOutOfRangeException e) { //TODO: Catch array index out of range here. } break; case "LOGTIME": int __hour = 0; int __minute = 0; string __cur_element = ((string[])_ar_deviceLogFileEntries [j]) [k]; try { __hour = Convert.ToInt32 (__cur_element.Substring (0, 2)); __minute = Convert.ToInt32 (__cur_element.Substring (3, 2)); } catch (FormatException) { new Gtk.MessageDialog (null, Gtk.DialogFlags.Modal, Gtk.MessageType.Error, Gtk.ButtonsType.Ok, "The file you tried to open was incorrectly formatted.\n" + "Please select a different file.", 0).Show (); return; } DateTime dt = new DateTime ( _logFileModifiedDate.Year, _logFileModifiedDate.Month, _logFileModifiedDate.Day, __hour, __minute, 0 ); _ar_logTime.Add (dt); break; case "DID": break; default: string value = ((string[])_ar_deviceLogFileEntries [j]) [k]; if ( value.Length > 1 ){ CDeviceLogFileEntry __entry = new CDeviceLogFileEntry (); __entry.LogFIleSensorCode = __device_descr.DeviceCode; __entry.LogFileSensorDescr = __device_descr.DeviceCodeDescription; __entry.LogFileSensorValue = value; _ar_logAlarms.Add (__entry); } break; } } } } }
private void parseStream() { string line = null; if (_logFile != null) { // Populate logFileLines. for (int i = 0; (line = _logFile.ReadLine()) != null; i++) { if (line != "" && line != "AT+CGREG?" && (line.Substring(0, 1).StartsWith("#") != true)) { _ar_logFileLines.Add(line); //Split lines string[] cols = line.Split(','); //Populate devi/** TODO: Populate Alarms Table */ceLogFileValues _ar_deviceLogFileEntries.Add(cols); } } /** * =============================== * New parse for temps and alarms. * =============================== * Walk through each LogFile Entry. * For each entry, walk through the Device LogFileDescription to get * the sensor codes, as well as the array index for the logfile values * for each Device LogFile Entry. */ if (_ar_logFileDescription == null) { _ar_logFileDescription = new CUtillity().CUTIL_DefaultDeviceFileDescription; } for (int j = 0; j < _ar_deviceLogFileEntries.Count; j++) { for (int k = 0; k < _ar_logFileDescription.Count; k++) { CDeviceFileDescription __device_descr = (CDeviceFileDescription)_ar_logFileDescription [k]; switch (__device_descr.DeviceCode) { case "LOGTEMP": try { _ar_logTimeTemp.Add(((string[])_ar_deviceLogFileEntries [j]) [k]); } catch (IndexOutOfRangeException e) { //TODO: Catch array index out of range here. } break; case "LOGTIME": int __hour = 0; int __minute = 0; string __cur_element = ((string[])_ar_deviceLogFileEntries [j]) [k]; try { __hour = Convert.ToInt32(__cur_element.Substring(0, 2)); __minute = Convert.ToInt32(__cur_element.Substring(3, 2)); } catch (FormatException) { new Gtk.MessageDialog(null, Gtk.DialogFlags.Modal, Gtk.MessageType.Error, Gtk.ButtonsType.Ok, "The file you tried to open was incorrectly formatted.\n" + "Please select a different file.", 0).Show(); return; } DateTime dt = new DateTime( _logFileModifiedDate.Year, _logFileModifiedDate.Month, _logFileModifiedDate.Day, __hour, __minute, 0 ); _ar_logTime.Add(dt); break; case "DID": break; default: string value = ((string[])_ar_deviceLogFileEntries [j]) [k]; if (value.Length > 1) { CDeviceLogFileEntry __entry = new CDeviceLogFileEntry(); __entry.LogFIleSensorCode = __device_descr.DeviceCode; __entry.LogFileSensorDescr = __device_descr.DeviceCodeDescription; __entry.LogFileSensorValue = value; _ar_logAlarms.Add(__entry); } break; } } } } }