libpappsomspp
Library for mass spectrometry
|
Go to the documentation of this file.
28 #include "../pappsoexception.h"
29 #include <QStringList>
43 QObject::tr(
"unable to copy PeptideModificatorPipeline object"));
86 "Please use setSink before addLabeledModificationString function"));
103 const QString &mod_str)
109 const QString &mod_str)
116 const QString &mod_str,
bool Nter,
bool Cter,
bool else_prot)
122 QObject::tr(
"Unable to add fixed modification string after "
123 "addLabeledModificationString function"));
125 QStringList mod_list_str =
126 mod_str.simplified().replace(
" ",
"").split(
",", QString::SkipEmptyParts);
127 for(
auto i = 0; i < mod_list_str.size(); ++i)
141 QStringList str_split = mod_str.split(
"@", QString::SkipEmptyParts);
167 const QString &mod_str)
174 const QString &mod_str)
181 const QString &mod_str)
188 const QString &mod_str,
bool Nter,
bool Cter,
bool else_prot)
194 QObject::tr(
"Unable to add potential modification string after "
195 "addLabeledModificationString function"));
198 QStringList mod_list_str =
199 mod_str.simplified().replace(
" ",
"").split(
",", QString::SkipEmptyParts);
200 for(
auto i = 0; i < mod_list_str.size(); ++i)
214 QStringList str_split = mod_str.split(
"@", QString::SkipEmptyParts);
216 QString mod_acc_str = str_split[0];
217 QStringList str_acc_split = mod_acc_str.split(
"(", QString::SkipEmptyParts);
225 if(str_acc_split.length() == 2)
227 QStringList max_num_str_list =
228 str_acc_split[1].replace(
")",
"").split(
"-", QString::SkipEmptyParts);
229 if(max_num_str_list.length() == 1)
233 else if(max_num_str_list.length() == 2)
266 "Please use setSink before addLabeledModificationString function"));
286 QStringList mod_list_str =
287 mod_str.simplified().replace(
" ",
"").split(
",", QString::SkipEmptyParts);
288 for(
auto i = 0; i < mod_list_str.size(); ++i)
313 QStringList str_split = mod_str.split(
"@", QString::SkipEmptyParts);
339 unsigned int missed_cleavage_number,
348 missed_cleavage_number,
357 const QString &peptide_str,
360 unsigned int missed_cleavage_number,
364 qDebug() <<
"PeptideModificatorPipeline::setPeptide begin";
370 qDebug() <<
"PeptideModificatorPipeline::setPeptide m_sink->setPeptideSp";
377 missed_cleavage_number,
379 qDebug() <<
"PeptideModificatorPipeline::setPeptide end";
void setProtNter(bool arg1)
this modification concerns the Nter peptide
void setProtNter(bool arg1)
this modification concerns the Nter peptide
void setSink(PeptideModificatorInterface *sink) override
void privAddPotentialModificationString(const QString &mod_str, bool Nter, bool Cter, bool else_prot)
void setPeptideSp(std::int8_t sequence_database_id, const ProteinSp &protein_sp, bool is_decoy, const PeptideSp &peptide_sp_original, unsigned int start, bool is_nter, unsigned int missed_cleavage_number, bool semi_enzyme) override
function to give the products of modifications for a digested peptide
void parseLabeledModification(const QString &mod_str, bool Nter, bool Cter, bool else_prot)
void setMaxNumberMod(unsigned int max_num)
void setSink(PeptideModificatorInterface *sink) override
void privAddFixedModificationString(const QString &mod_str, bool Nter, bool Cter, bool else_prot)
void setProtElse(bool arg1)
this modification concerns all peptides between Nter and Cter
PeptideModificatorPipeline()
PeptideSp makePeptideSp() const
void setModificationCounter(unsigned int counter)
void parseFixedModification(const QString &mod_str, bool Nter, bool Cter, bool else_prot)
void addPotentialCterModificationString(const QString &mod_str)
void setMinNumberMod(unsigned int min_num)
virtual ~PeptideModificatorPipeline()
void addFixedModificationString(const QString &mod_str)
virtual void setModificationPattern(QString &pattern) final
set the pattern on which the modification will be applied (usually the list of concerned AA)
void setPeptide(std::int8_t sequence_database_id, const ProteinSp &protein_sp, bool is_decoy, const QString &peptide_str, unsigned int start, bool is_nter, unsigned int missed_cleavage_number, bool semi_enzyme) override
function to give the products of a protein digestion by an enzyme
void setProtCter(bool arg1)
this modification concerns the Cter peptide
void setProtElse(bool arg1)
this modification concerns all peptides between Nter and Cter
std::vector< PeptideModificatorInterface * > m_pepModificatorPtrList
std::shared_ptr< const Protein > ProteinSp
shared pointer on a Protein object
void addLabeledModificationString(const QString &mod_str)
static AaModificationP getInstance(const QString &accession)
void addPotentialNterModificationString(const QString &mod_str)
void addFixedCterModificationString(const QString &mod_str)
void addFixedNterModificationString(const QString &mod_str)
const typedef AaModification * AaModificationP
virtual void setSink(PeptideModificatorInterface *sink)=0
Modify a peptide shared pointer with a variable modification on one AA.
std::shared_ptr< const Peptide > PeptideSp
virtual void setPeptideSp(std::int8_t sequence_database_id, const ProteinSp &protein_sp, bool is_decoy, const PeptideSp &peptide_sp, unsigned int start, bool is_nter, unsigned int missed_cleavage_number, bool semi_enzyme)=0
function to give the products of modifications for a digested peptide
void addModificator(PeptideModificatorInterface *p_peptide_mod)
void setSink(PeptideModificatorInterface *sink) override
void setProtCter(bool arg1)
this modification concerns the Cter peptide
void addPotentialModificationString(const QString &mod_str)
PeptideModificatorInterface * m_sink
PeptideModificatorInterface * mp_firstModificator
PeptideModificatorTee * mp_peptideModificatorTee
PeptideSpSinkInterface * mp_lastPeptideSinkInterface
void parsePotentialModification(const QString &mod_str, bool Nter, bool Cter, bool else_prot)