40 #include <boost/regex.hpp>
74 SIZE_OF_SPECIFICITY = 10
77 static const std::string NamesOfSpecificity[SIZE_OF_SPECIFICITY];
92 Size getMissedCleavages()
const;
95 void setMissedCleavages(
Size missed_cleavages);
98 String getEnzymeName()
const;
124 Size digestUnmodified(
const StringView& sequence, std::vector<StringView>& output,
Size min_length = 1,
Size max_length = 0)
const;
139 Size digestUnmodified(
const StringView& sequence, std::vector<std::pair<Size,Size>>& output,
Size min_length = 1,
Size max_length = 0)
const;
152 bool isValidProduct(
const String& sequence,
int pos,
int length,
bool ignore_missed_cleavages =
true)
const;
161 bool filterByMissedCleavages(
const String& sequence,
const std::function<
bool(
const Int)>& filter)
const;
171 bool isValidProduct_(
const String& sequence,
174 bool ignore_missed_cleavages,
175 bool allow_nterm_protein_cleavage,
176 bool allow_random_asp_pro_cleavage)
const;
192 std::vector<int> tokenize_(
const String& sequence,
int start = 0,
int end = -1)
const;
202 Size digestAfterTokenize_(
const std::vector<int>& fragment_positions,
const StringView& sequence, std::vector<StringView>& output,
Size min_length = 0,
Size max_length = -1)
const;
203 Size digestAfterTokenize_(
const std::vector<int>& fragment_positions,
const StringView& sequence, std::vector<std::pair<Size,Size>>& output,
Size min_length = 0,
Size max_length = -1)
const;
213 Size countMissedCleavages_(
const std::vector<int>& cleavage_positions,
Size seq_start,
Size seq_end)
const;