/// <summary> /// Handle PeptideEvidence element /// Called by ReadSequenceCollection (xml hierarchy) /// </summary> /// <param name="reader">XmlReader that is only valid for the scope of the single PeptideEvidence element</param> private void ReadPeptideEvidence(XmlReader reader) { reader.MoveToContent(); var pepEvidence = new PeptideEvidence { IsDecoy = Convert.ToBoolean(reader.GetAttribute("isDecoy")), Post = reader.GetAttribute("post"), Pre = reader.GetAttribute("pre"), End = Convert.ToInt32(reader.GetAttribute("end")), Start = Convert.ToInt32(reader.GetAttribute("start")), PeptideRef = m_peptides[reader.GetAttribute("peptide_ref")], DbSeq = m_database[reader.GetAttribute("dBSequence_ref")] }; m_evidences.Add(reader.GetAttribute("id"), pepEvidence); reader.Close(); }
private void ComputeTerminusState(PeptideEvidence evidence, short numTrypticEnds, ProteinInformation protein) { if (evidence.Pre[0] == '-') { if (evidence.Post[0] == '-') { protein.TerminusState = clsPeptideCleavageStateCalculator.ePeptideTerminusStateConstants.ProteinNandCCTerminus; protein.CleavageState = clsPeptideCleavageStateCalculator.ePeptideCleavageStateConstants.Full; } else { protein.TerminusState = clsPeptideCleavageStateCalculator.ePeptideTerminusStateConstants.ProteinNTerminus; } } else if (evidence.Post[0] == '-') { protein.TerminusState = clsPeptideCleavageStateCalculator.ePeptideTerminusStateConstants.ProteinCTerminus; } else { protein.TerminusState = clsPeptideCleavageStateCalculator.ePeptideTerminusStateConstants.None; } switch (numTrypticEnds) { case 0: protein.CleavageState = clsPeptideCleavageStateCalculator.ePeptideCleavageStateConstants.NonSpecific; break; case 1: protein.CleavageState = clsPeptideCleavageStateCalculator.ePeptideCleavageStateConstants.Partial; break; case 2: protein.CleavageState = clsPeptideCleavageStateCalculator.ePeptideCleavageStateConstants.Full; break; } }