private IIdentifiedResultTextFormat GetMultipleFileFormat(IIdentifiedSpectrumWriter writer) { var result = DoGetMultipleFileFormat(); result.ProteinFormat = format.ProteinFormat.GetLineFormat(proteinColumns.Merge("\t")); result.PeptideFormat = format.PeptideFormat.GetLineFormat(peptideColumns.Where(m => !string.IsNullOrWhiteSpace(m)).Merge("\t")); result.ScanWriter = writer; return(result); }
private IIdentifiedResultTextFormat GetSingleFileFormat(IIdentifiedSpectrumWriter writer) { QuantificationResultSingleFileFormat result = new QuantificationResultSingleFileFormat() { ScanWriter = writer, }; result.ProteinFormat = format.ProteinFormat.GetLineFormat(proteinColumns.Merge("\t")); result.PeptideFormat = format.PeptideFormat.GetLineFormat(peptideColumns.Merge("\t")); return(result); }
protected virtual IFileWriter <IIdentifiedResult> GetExportFileWriter() { QuantificationExportForm form = new QuantificationExportForm(); form.ConfigFileName = GetExportConfigFileName(); IIdentifiedSpectrumWriter writer = GetScanWriter(""); var allheaders = (from h in writer.Header.Split('\t') where !string.IsNullOrWhiteSpace(h) select h).ToList(); form.InitializeScan(allheaders, ExportScanHeaders); if (form.MyShowDialog(this) != DialogResult.OK) { return(null); } form.SaveOption(); if (form.IsExportScan) { var detailDir = new FileInfo(summaryFilename).DirectoryName + "/" + GetDetailDirectoryName(); ExportScanHeaders = form.GetCheckedScanHeaders(); writer = GetScanWriter(detailDir, ExportScanHeaders.Merge("\t")); } else { writer = null; } IIdentifiedResultTextFormat result; if (form.IsSingleFile) { result = GetSingleFileFormat(writer); } else { result = GetMultipleFileFormat(writer); } IIdentifiedProteinGroupWriter groupWriter; if (form.IsFilterProteinName) { string[] parts = form.ProteinNamePattern.Split(';'); List <string> patterns = new List <string>(); foreach (string part in parts) { if (part.Trim().Length > 0) { patterns.Add(part.Trim()); } } groupWriter = new IdentifiedProteinGroupSingleLineWriter(patterns.ToArray()); } else { groupWriter = new IdentifiedProteinGroupMultipleLineWriter(); } result.GroupWriter = groupWriter; result.ValidGroup = (m => m[0].IsEnabled(true) && option.IsProteinRatioValid(m[0]) && !option.IsProteinOutlier(m[0])); result.ValidSpectrum = (m => m.IsEnabled(true) && option.IsPeptideRatioValid(m) && !option.IsPeptideOutlier(m)); return(result); }