40 #include <boost/regex.hpp> 74 static const std::string NamesOfSpecificity[SIZE_OF_SPECIFICITY];
86 Size getMissedCleavages()
const;
89 void setMissedCleavages(
Size missed_cleavages);
92 String getEnzymeName()
const;
118 Size digestUnmodified(
const StringView& sequence, std::vector<StringView>& output,
Size min_length = 1,
Size max_length = 0)
const;
131 bool isValidProduct(
const String& sequence,
int pos,
int length,
bool ignore_missed_cleavages =
true)
const;
140 bool filterByMissedCleavages(
const String& sequence, std::function<
bool(
const Int)> filter)
const;
150 bool isValidProduct_(
const String& sequence,
153 bool ignore_missed_cleavages,
154 bool allow_nterm_protein_cleavage,
155 bool allow_random_asp_pro_cleavage)
const;
171 std::vector<int> tokenize_(
const String& sequence,
int start = 0,
int end = -1)
const;
181 Size digestAfterTokenize_(
const std::vector<int>& fragment_positions,
const StringView& sequence, std::vector<StringView>& output,
Size min_length = 0,
Size max_length = -1)
const;
191 Size countMissedCleavages_(
const std::vector<int>& cleavage_positions,
Size seq_start,
Size seq_end)
const;
A more convenient string class.
Definition: String.h:57
boost::regex re_
Regex for tokenizing (huge speedup by making this a member instead of stack object in tokenize_()) ...
Definition: EnzymaticDigestion.h:199
Abstract base class for digestion enzymes.
Definition: DigestionEnzyme.h:52
const DigestionEnzyme * enzyme_
Used enzyme.
Definition: EnzymaticDigestion.h:197
no requirements on start / end
Definition: EnzymaticDigestion.h:70
Class for the enzymatic digestion of sequences.
Definition: EnzymaticDigestion.h:62
Main OpenMS namespace.
Definition: FeatureDeconvolution.h:46
Specificity
when querying for valid digestion products, this determines if the specificity of the two peptide end...
Definition: EnzymaticDigestion.h:66
fully enzyme specific, e.g., tryptic (ends with KR, AA-before is KR), or peptide is at protein termin...
Definition: EnzymaticDigestion.h:68
semi specific, i.e., one of the two cleavage sites must fulfill requirements
Definition: EnzymaticDigestion.h:69
Specificity specificity_
specificity of enzyme
Definition: EnzymaticDigestion.h:202
Size missed_cleavages_
Number of missed cleavages.
Definition: EnzymaticDigestion.h:194
size_t Size
Size type e.g. used as variable which can hold result of size()
Definition: Types.h:127
static const std::string UnspecificCleavage
Name for unspecific cleavage.
Definition: EnzymaticDigestion.h:77
int Int
Signed integer type.
Definition: Types.h:102
StringView provides a non-owning view on an existing string.
Definition: String.h:480