public static void WritePepXml() { string filePath = Path.Combine(Examples.BASE_DIRECTORY, "example.pepXML"); Console.WriteLine("Writting to " + filePath); using (PepXmlWriter writer = new PepXmlWriter(filePath)) { writer.WriteSampleProtease(Protease.GetProtease("Trypsin")); writer.StartSearchSummary("OMSSA", true, true); writer.WriteProteinDatabase("Resources/yeast_uniprot_120226.fasta"); writer.WriteSearchProtease(Protease.GetProtease("Trypsin"), 3); writer.WriteModification(ModificationDictionary.GetModification("Acetyl"), ModificationSites.K | ModificationSites.NPep); writer.WriteModification(ModificationDictionary.GetModification("CAM"), ModificationSites.C); writer.WriteModification(ModificationDictionary.GetModification("Phospho"), ModificationSites.S | ModificationSites.T | ModificationSites.Y, false); writer.SetCurrentStage(PepXmlWriter.Stage.Spectra, true); writer.StartSpectrum(15, 1.234, 523.4324, 3); PeptideSpectralMatch psm = new PeptideSpectralMatch(PeptideSpectralMatchScoreType.OmssaEvalue); psm.Score = 1.5e-5; Protein protein = new Protein("", "Test Protein"); psm.Peptide = new Peptide("DEREK", protein); psm.Charge = 3; writer.WritePSM(psm); writer.EndSpectrum(); } }
public override IEnumerable <string> Process(string filename) { var parser = new OutParser(); string resultFilename; if (null == this.targetDir) { resultFilename = FileUtils.ChangeExtension(filename, ".xml"); } else { resultFilename = targetDir + "/" + FileUtils.ChangeExtension(new FileInfo(filename).Name, ".xml"); } using (PepXmlWriter writer = new PepXmlWriter("out")) { writer.Open(resultFilename); writer.OpenMsmsRunSummary(filename); SequestParam sp = new SequestParamFile().ReadFromFile(filename); writer.WriteSequestParam(sp); using (var reader = new OutsReader(filename)) { int totalCount = reader.FileCount; Progress.SetRange(0, totalCount); int currentCount = 0; while (reader.HasNext) { if (Progress.IsCancellationPending()) { throw new UserTerminatedException(); } List <string> contents = reader.NextContent(); IIdentifiedSpectrum sph = parser.Parse(contents); if (sph == null) { continue; } writer.WriteSequestPeptideHit(sph); currentCount++; Progress.SetPosition(currentCount); } Progress.SetPosition(totalCount); } writer.CloseMsmsRunSummary(); } return(new[] { resultFilename }); }
public void Convert(string omssaCSV, MSDataFile dataFile) { string filePath = Path.ChangeExtension(omssaCSV, ".pepxml"); using (PepXmlWriter writer = new PepXmlWriter(filePath)) { writer.WriteSampleProtease(Protease); writer.StartSearchSummary("OMSSA", true, true); writer.WriteProteinDatabase(FastaDatabaseFile); writer.WriteSearchProtease(Protease, MissedClevages); foreach (int modNumber in FixedMods) { OmssaModification mod; if (OmssaModification.TryGetModification(modNumber, out mod)) { writer.WriteModification(mod, mod.Sites, true); } } foreach (int modNumber in VariableMods) { OmssaModification mod; if (OmssaModification.TryGetModification(modNumber, out mod)) { writer.WriteModification(mod, mod.Sites, false); } } writer.SetCurrentStage(PepXmlWriter.Stage.Spectra, true); using (OmssaCsvPsmReader reader = new OmssaCsvPsmReader(omssaCSV, UserModFile)) { reader.AddMSDataFile(dataFile); reader.LoadProteins(FastaDatabaseFile); foreach (PeptideSpectralMatch psm in reader.ReadNextPsm()) { writer.StartSpectrum(psm.SpectrumNumber, psm.Spectrum.RetentionTime, psm.Spectrum.PrecursorMz, psm.Spectrum.PrecursorCharge); writer.WritePSM(psm); writer.EndSpectrum(); } } } }