27#include <QRegularExpression>
43 Enzyme(
const QString &recognition_site);
53 void eat(std::int8_t sequence_database_id,
101 std::int8_t sequence_database_id,
107 unsigned int missed_cleavage_number,
108 bool semi_enzyme)
const;
109 void replaceWildcards(std::vector<std::string> *p_peptide_variant_list)
const;
QRegularExpression m_recognitionSite
example with a kinase == [K,R]
std::size_t m_maxPeptideVariantListSize
unsigned int getMiscleavage() const
get the maximum number of missed cleavage allowed in the digestion
Enzyme()
build the default enzyme (trypsin) with recognition_site = "([KR])([^P])"
void setMiscleavage(unsigned int miscleavage)
sets the maximum number of missed cleavage allowed in the digestion
std::vector< char > m_wildCardB
std::vector< char > m_wildCardZ
std::vector< char > m_wildCardX
void sanityCheck(EnzymeProductInterface &enzyme_product, std::int8_t sequence_database_id, const ProteinSp &protein_sp, bool is_decoy, const PeptideStr &peptide, unsigned int start, bool is_nter, unsigned int missed_cleavage_number, bool semi_enzyme) const
const QRegularExpression & getQRegExpRecognitionSite() const
void replaceWildcards(std::vector< std::string > *p_peptide_variant_list) const
void setTakeOnlyFirstWildcard(bool take_only_first_wildcard)
take only first m_takeOnlyFirstWildcard
void eat(std::int8_t sequence_database_id, const ProteinSp &protein_sp, bool is_decoy, EnzymeProductInterface &enzyme_product) const
digest a protein into enzyme products
unsigned int m_miscleavage
bool m_takeOnlyFirstWildcard
void setMaxPeptideVariantListSize(std::size_t max_peptide_variant_list_size)
if there are wildcards in the protein sequence : restrict the number of possible peptide sequences
tries to keep as much as possible monoisotopes, removing any possible C13 peaks and changes multichar...
QString PeptideStr
A type definition for PeptideStr.
std::shared_ptr< const Protein > ProteinSp
shared pointer on a Protein object