Beispiel #1
0
 public Protease(string name, IEnumerable<string> sequencesInducingCleavage, IEnumerable<string> sequencesPreventingCleavage, Terminus cleavageTerminus, CleavageSpecificity cleavageSpecificity)
 {
     Name = name;
     SequencesInducingCleavage = sequencesInducingCleavage;
     SequencesPreventingCleavage = sequencesPreventingCleavage;
     CleavageTerminus = cleavageTerminus;
     CleavageSpecificity = cleavageSpecificity;
 }
Beispiel #2
0
 public Protease(string name, IEnumerable<string> sequencesInducingCleavage, IEnumerable<string> sequencesPreventingCleavage, Terminus cleavageTerminus, CleavageSpecificity cleavageSpecificity, string psiMsAccessionNumber, string psiMsName, string siteRegexp)
 {
     Name = name;
     SequencesInducingCleavage = sequencesInducingCleavage;
     SequencesPreventingCleavage = sequencesPreventingCleavage;
     CleavageTerminus = cleavageTerminus;
     CleavageSpecificity = cleavageSpecificity;
     PsiMsAccessionNumber = psiMsAccessionNumber;
     PsiMsName = psiMsName;
     SiteRegexp = siteRegexp;
 }
Beispiel #3
0
        public Protease(string name, Terminus terminus, string cut, string nocut = "", string cleavePattern = "")
        {
            Name = name;
            Terminal = terminus;
            Cut = cut;
            NoCut = nocut;

            if (string.IsNullOrEmpty(cleavePattern))
            {
                StringBuilder constructedRegex = new StringBuilder();

                // Add grouping [ ] if more than one residue
                string cutregex = (Cut.Length > 1) ? "[" + Cut + "]" : Cut;
                string nocutregex = (NoCut.Length > 1) ? "[" + NoCut + "]" : NoCut;

                if (terminus == Terminus.N)
                {
                    // Apply negative look-a-head for N-terminal no cuts
                    if (!string.IsNullOrEmpty(nocut))
                    {
                        constructedRegex.Append("(?<!" + nocutregex + ")");
                    }
                    constructedRegex.Append("(?'cut')");
                    constructedRegex.Append(cutregex);
                }
                else
                {
                    constructedRegex.Append(cutregex);
                    constructedRegex.Append("(?'cut')");
                    if (!string.IsNullOrEmpty(nocut))
                    {
                        constructedRegex.Append("(?!" + nocutregex + ")");
                    }
                }

                _cleavageRegex = new Regex(constructedRegex.ToString(), RegexOptions.Compiled);
            }
            else
            {
                _cleavageRegex = new Regex(cleavePattern, RegexOptions.Compiled);
            }
        }
Beispiel #4
0
 public void AddVariableModification(IMass modificaiton, Terminus terminus)
 {
 }
Beispiel #5
0
        public static Protease AddProtease(string name, Terminus terminus, string cut, string noCut = "")
        {
            Protease protease = new Protease(name, terminus, cut, noCut);
            Proteases[name] = protease;

            OnProteasesChanged();

            return protease;
        }
Beispiel #6
0
 public static Protease AddProtease(string name, Terminus terminus, string cut, string noCut = "")
 {
     Protease protease = new Protease(name, terminus, cut, noCut);
     Proteases.Add(protease.Name, protease);
     return protease;
 }