public void AddMissedCleavages() { if (this.maxMissedCleavages > 0) { var missedList = new List <DigestRangeLocation>(); for (int i = 0; i < this.peptideQue.Count; i++) { DigestRangeLocation loc = this.peptideQue[i]; for (int iMiss = 0; iMiss < this.maxMissedCleavages; iMiss++) { int j = i + 1 + iMiss; if (j == this.peptideQue.Count) { break; } RangeLocation loc2 = this.peptideQue[j]; missedList.Add(new DigestRangeLocation(loc.Min, loc2.Max, iMiss + 1)); } } this.peptideQue.AddRange(missedList); } }
public void CreatePeptideFeature(DigestRangeLocation loc) { if (!this.sequence.Annotation.ContainsKey(PEPTIDE_FEATURE_TYPE)) { this.sequence.Annotation[PEPTIDE_FEATURE_TYPE] = new List <DigestPeptideInfo>(); } var peptides = (List <DigestPeptideInfo>) this.sequence.Annotation[PEPTIDE_FEATURE_TYPE]; var dpi = new DigestPeptideInfo(); dpi.ProteinName = this.sequence.Name; dpi.PeptideSeq = this.sequence.SeqString.Substring(loc.Min - 1, loc.Max - loc.Min + 1); dpi.PeptideLoc = new RangeLocation(loc); dpi.MissCleavage = loc.MissCleavage; peptides.Add(dpi); }