private void StoreExtendedScanInfo(ref clsScanStatsEntry.udtExtendedStatsInfoType udtExtendedScanInfo, string strEntryName, string strEntryValue) { if (strEntryValue == null) { strEntryValue = string.Empty; } var scanEvents = new List <KeyValuePair <string, string> > { new KeyValuePair <string, string>(strEntryName, strEntryValue) }; StoreExtendedScanInfo(ref udtExtendedScanInfo, scanEvents); }
private void StoreExtendedScanInfo( ref clsScanStatsEntry.udtExtendedStatsInfoType udtExtendedScanInfo, IReadOnlyCollection <KeyValuePair <string, string> > scanEvents) { var cTrimChars = new[] { ':', ' ' }; try { if (scanEvents == null || scanEvents.Count == 0) { return; } foreach (var scanEvent in scanEvents) { if (string.IsNullOrWhiteSpace(scanEvent.Key)) { // Empty entry name; do not add continue; } // We're only storing certain scan events var entryNameLCase = scanEvent.Key.ToLower().TrimEnd(cTrimChars); if (string.Equals(entryNameLCase, clsScanStatsEntry.SCANSTATS_COL_ION_INJECTION_TIME, StringComparison.InvariantCultureIgnoreCase)) { udtExtendedScanInfo.IonInjectionTime = scanEvent.Value; break; } if (string.Equals(entryNameLCase, clsScanStatsEntry.SCANSTATS_COL_SCAN_SEGMENT, StringComparison.InvariantCultureIgnoreCase)) { udtExtendedScanInfo.ScanSegment = scanEvent.Value; break; } if (string.Equals(entryNameLCase, clsScanStatsEntry.SCANSTATS_COL_SCAN_EVENT, StringComparison.InvariantCultureIgnoreCase)) { udtExtendedScanInfo.ScanEvent = scanEvent.Value; break; } if (string.Equals(entryNameLCase, clsScanStatsEntry.SCANSTATS_COL_CHARGE_STATE, StringComparison.InvariantCultureIgnoreCase)) { udtExtendedScanInfo.ChargeState = scanEvent.Value; break; } if (string.Equals(entryNameLCase, clsScanStatsEntry.SCANSTATS_COL_MONOISOTOPIC_MZ, StringComparison.InvariantCultureIgnoreCase)) { udtExtendedScanInfo.MonoisotopicMZ = scanEvent.Value; break; } if (string.Equals(entryNameLCase, clsScanStatsEntry.SCANSTATS_COL_COLLISION_MODE, StringComparison.InvariantCultureIgnoreCase)) { udtExtendedScanInfo.CollisionMode = scanEvent.Value; break; } if (string.Equals(entryNameLCase, clsScanStatsEntry.SCANSTATS_COL_SCAN_FILTER_TEXT, StringComparison.InvariantCultureIgnoreCase)) { udtExtendedScanInfo.ScanFilterText = scanEvent.Value; break; } } } catch (Exception) { // Ignore any errors here } }