pappso::PeptideModificatorPipeline Class Reference

`#include <peptidemodificatorpipeline.h>`

Inheritance diagram for pappso::PeptideModificatorPipeline:

## Public Member Functions

| PeptideModificatorPipeline ()
| PeptideModificatorPipeline (const PeptideModificatorPipeline &other)
virtual | ~PeptideModificatorPipeline ()
void | addFixedModificationString (const QString &mod_str)
void | addFixedNterModificationString (const QString &mod_str)
void | addFixedCterModificationString (const QString &mod_str)
void | addPotentialModificationString (const QString &mod_str)
void | addPotentialNterModificationString (const QString &mod_str)
void | addPotentialCterModificationString (const QString &mod_str)
void | setSink (PeptideModificatorInterface *sink) override
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 More...
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 More...
void | addLabeledModificationString (const QString &mod_str)
Public Member Functions inherited from pappso::PeptideModificatorInterface
virtual | ~PeptideModificatorInterface ()

## Private Member Functions

void | parseFixedModification (const QString &mod_str, bool Nter, bool Cter, bool else_prot)
void | privAddFixedModificationString (const QString &mod_str, bool Nter, bool Cter, bool else_prot)
void | parsePotentialModification (const QString &mod_str, bool Nter, bool Cter, bool else_prot)
void | privAddPotentialModificationString (const QString &mod_str, bool Nter, bool Cter, bool else_prot)
void | parseLabeledModification (const QString &mod_str, bool Nter, bool Cter, bool else_prot)

## Private Attributes

PeptideModificatorTee * | mp_peptideModificatorTee = nullptr
PeptideModificatorInterface * | m_sink = nullptr
PeptideSpSinkInterface * | mp_lastPeptideSinkInterface
PeptideModificatorInterface * | mp_firstModificator = nullptr
std::vector< PeptideModificatorInterface * > | m_pepModificatorPtrList

## Detailed Description

Definition at line 33 of file peptidemodificatorpipeline.h.

## Constructor & Destructor Documentation

## PeptideModificatorPipeline() [1/2]

PeptideModificatorPipeline::PeptideModificatorPipeline | ( |  | ) |

Definition at line 35 of file peptidemodificatorpipeline.cpp.

{
}

## PeptideModificatorPipeline() [2/2]

PeptideModificatorPipeline::PeptideModificatorPipeline | ( | const PeptideModificatorPipeline & | other | ) |

Definition at line 39 of file peptidemodificatorpipeline.cpp.

{
throw PappsoException(
QObject::tr("unable to copy PeptideModificatorPipeline object"));
if(other.mp_peptideModificatorTee != nullptr)
{
// mp_peptideModificatorTee = new
// PeptideModificatorTee(other.mp_peptideModificatorTee);
}
mp_lastPeptideSinkInterface = nullptr;
mp_firstModificator = nullptr;
for(auto p_mod : other.m_pepModificatorPtrList)
{
delete(p_mod);
}
m_sink = other.m_sink;
mp_lastPeptideSinkInterface = other.mp_lastPeptideSinkInterface;
mp_firstModificator = other.mp_firstModificator;
m_pepModificatorPtrList = other.m_pepModificatorPtrList;
}
pappso::PappsoException
Definition: pappsoexception.h:42
pappso::PeptideModificatorPipeline::m_sink
PeptideModificatorInterface * m_sink
Definition: peptidemodificatorpipeline.h:80
pappso::PeptideModificatorPipeline::m_pepModificatorPtrList
std::vector< PeptideModificatorInterface * > m_pepModificatorPtrList
Definition: peptidemodificatorpipeline.h:86
pappso::PeptideModificatorPipeline::mp_firstModificator
PeptideModificatorInterface * mp_firstModificator
Definition: peptidemodificatorpipeline.h:84
pappso::PeptideModificatorPipeline::mp_lastPeptideSinkInterface
PeptideSpSinkInterface * mp_lastPeptideSinkInterface
Definition: peptidemodificatorpipeline.h:82
pappso::PeptideModificatorPipeline::mp_peptideModificatorTee
PeptideModificatorTee * mp_peptideModificatorTee
Definition: peptidemodificatorpipeline.h:78

References m_pepModificatorPtrList, m_sink, mp_firstModificator, mp_lastPeptideSinkInterface, and mp_peptideModificatorTee.

## ~PeptideModificatorPipeline()

PeptideModificatorPipeline::~PeptideModificatorPipeline | ( |  | ) |

virtual

Definition at line 67 of file peptidemodificatorpipeline.cpp.

{
for(auto p_mod : m_pepModificatorPtrList)
{
delete(p_mod);
}
if(mp_peptideModificatorTee == nullptr)
{
delete(mp_peptideModificatorTee);
}
}

References m_pepModificatorPtrList, and mp_peptideModificatorTee.

## Member Function Documentation

## addFixedCterModificationString()

void PeptideModificatorPipeline::addFixedCterModificationString | ( | const QString & | mod_str | ) |

Definition at line 108 of file peptidemodificatorpipeline.cpp.

{
privAddFixedModificationString(mod_str, false, true, false);
}
pappso::PeptideModificatorPipeline::privAddFixedModificationString
void privAddFixedModificationString(const QString &mod_str, bool Nter, bool Cter, bool else_prot)
Definition: peptidemodificatorpipeline.cpp:115

References privAddFixedModificationString().

## addFixedModificationString()

void PeptideModificatorPipeline::addFixedModificationString | ( | const QString & | mod_str | ) |

Definition at line 97 of file peptidemodificatorpipeline.cpp.

{
privAddFixedModificationString(mod_str, true, true, true);
}

References privAddFixedModificationString().

## addFixedNterModificationString()

void PeptideModificatorPipeline::addFixedNterModificationString | ( | const QString & | mod_str | ) |

Definition at line 102 of file peptidemodificatorpipeline.cpp.

{
privAddFixedModificationString(mod_str, true, false, false);
}

References privAddFixedModificationString().

## addLabeledModificationString()

void PeptideModificatorPipeline::addLabeledModificationString | ( | const QString & | mod_str | ) |

Definition at line 261 of file peptidemodificatorpipeline.cpp.

{
if(m_sink == nullptr)
{
throw PappsoException(QObject::tr(
"Please use setSink before addLabeledModificationString function"));
}
if(mp_peptideModificatorTee == nullptr)
{
mp_peptideModificatorTee = new PeptideModificatorTee;
}
if(mp_firstModificator == nullptr)
{
mp_firstModificator = mp_peptideModificatorTee;
}
// backup pointers
PeptideModificatorInterface *backup_sink = m_sink;
PeptideSpSinkInterface *backup_p_last_peptide_sink_interface =
mp_lastPeptideSinkInterface;
PeptideModificatorInterface *backup_p_first_modificator = mp_firstModificator;
QStringList mod_list_str =
mod_str.simplified().replace(" ", "").split(",", Qt::SkipEmptyParts);
for(auto i = 0; i < mod_list_str.size(); ++i)
{
parseLabeledModification(mod_list_str[i], true, true, true);
if(i == 0)
{
mp_peptideModificatorTee->addModificator(mp_firstModificator);
}
}
m_sink = backup_sink;
mp_lastPeptideSinkInterface = backup_p_last_peptide_sink_interface;
mp_firstModificator = backup_p_first_modificator;
mp_lastPeptideSinkInterface->setSink(mp_peptideModificatorTee);
}
pappso::PeptideModificatorInterface
Definition: enzymeproductinterface.h:65
pappso::PeptideModificatorPipeline::parseLabeledModification
void parseLabeledModification(const QString &mod_str, bool Nter, bool Cter, bool else_prot)
Definition: peptidemodificatorpipeline.cpp:308
pappso::PeptideModificatorTee
Definition: peptidemodificatortee.h:35
pappso::PeptideModificatorTee::addModificator
void addModificator(PeptideModificatorInterface *p_peptide_mod)
Definition: peptidemodificatortee.cpp:43
pappso::PeptideSpSinkInterface
Definition: enzymeproductinterface.h:108
pappso::PeptideSpSinkInterface::setSink
virtual void setSink(PeptideModificatorInterface *sink)=0

References pappso::PeptideModificatorTee::addModificator(), m_sink, mp_firstModificator, mp_lastPeptideSinkInterface, mp_peptideModificatorTee, parseLabeledModification(), and pappso::PeptideSpSinkInterface::setSink().

## addPotentialCterModificationString()

void PeptideModificatorPipeline::addPotentialCterModificationString | ( | const QString & | mod_str | ) |

Definition at line 181 of file peptidemodificatorpipeline.cpp.

{
privAddPotentialModificationString(mod_str, false, true, false);
}
pappso::PeptideModificatorPipeline::privAddPotentialModificationString
void privAddPotentialModificationString(const QString &mod_str, bool Nter, bool Cter, bool else_prot)
Definition: peptidemodificatorpipeline.cpp:188

References privAddPotentialModificationString().

## addPotentialModificationString()

void PeptideModificatorPipeline::addPotentialModificationString | ( | const QString & | mod_str | ) |

Definition at line 167 of file peptidemodificatorpipeline.cpp.

{
privAddPotentialModificationString(mod_str, true, true, true);
}

References privAddPotentialModificationString().

## addPotentialNterModificationString()

void PeptideModificatorPipeline::addPotentialNterModificationString | ( | const QString & | mod_str | ) |

Definition at line 174 of file peptidemodificatorpipeline.cpp.

{
privAddPotentialModificationString(mod_str, true, false, false);
}

References privAddPotentialModificationString().

## parseFixedModification()

void PeptideModificatorPipeline::parseFixedModification | ( | const QString & | mod_str,
|  | bool | Nter,
|  | bool | Cter,
|  | bool | else_prot
| ) |  |

private

Definition at line 135 of file peptidemodificatorpipeline.cpp.

{
QStringList str_split = mod_str.split("@", Qt::SkipEmptyParts);
pappso::AaModificationP aa_mod = AaModification::getInstance(str_split[0]);
PeptideFixedModificationBuilder *mod =
new PeptideFixedModificationBuilder(aa_mod);
mod->setModificationPattern(str_split[1]);
mod->setSink(m_sink);
mod->setProtNter(Nter);
mod->setProtCter(Cter);
mod->setProtElse(else_prot);
m_pepModificatorPtrList.push_back(mod);
if(mp_firstModificator == nullptr)
{
mp_firstModificator = mod;
}
else
{
mp_lastPeptideSinkInterface->setSink(mod);
}
mp_lastPeptideSinkInterface = mod;
}
pappso::AaModification
Definition: aamodification.h:57
pappso::AaModification::getInstance
static AaModificationP getInstance(const QString &accession)
Definition: aamodification.cpp:366
pappso::PeptideFixedModificationBuilder
Definition: peptidefixedmodificationbuilder.h:35
pappso::PeptideFixedModificationBuilder::setProtElse
void setProtElse(bool arg1)
this modification concerns all peptides between Nter and Cter
Definition: peptidefixedmodificationbuilder.h:72
pappso::PeptideFixedModificationBuilder::setProtCter
void setProtCter(bool arg1)
this modification concerns the Cter peptide
Definition: peptidefixedmodificationbuilder.h:65
pappso::PeptideFixedModificationBuilder::setSink
void setSink(PeptideModificatorInterface *sink) override
Definition: peptidefixedmodificationbuilder.h:51
pappso::PeptideFixedModificationBuilder::setProtNter
void setProtNter(bool arg1)
this modification concerns the Nter peptide
Definition: peptidefixedmodificationbuilder.h:58
pappso::PeptideModificatorBase::setModificationPattern
virtual void setModificationPattern(QString &pattern) final
set the pattern on which the modification will be applied (usually the list of concerned AA)
Definition: peptidemodificatorbase.cpp:44

References pappso::Cter, pappso::AaModification::getInstance(), m_pepModificatorPtrList, m_sink, mp_firstModificator, mp_lastPeptideSinkInterface, pappso::Nter, pappso::PeptideModificatorBase::setModificationPattern(), pappso::PeptideFixedModificationBuilder::setProtCter(), pappso::PeptideFixedModificationBuilder::setProtElse(), pappso::PeptideFixedModificationBuilder::setProtNter(), pappso::PeptideFixedModificationBuilder::setSink(), and pappso::PeptideSpSinkInterface::setSink().

Referenced by privAddFixedModificationString().

## parseLabeledModification()

void PeptideModificatorPipeline::parseLabeledModification | ( | const QString & | mod_str,
|  | bool | Nter,
|  | bool | Cter,
|  | bool | else_prot
| ) |  |

private

Definition at line 308 of file peptidemodificatorpipeline.cpp.

{
QStringList str_split = mod_str.split("@", Qt::SkipEmptyParts);
pappso::AaModificationP aa_mod = AaModification::getInstance(str_split[0]);
PeptideFixedModificationBuilder *mod =
new PeptideFixedModificationBuilder(aa_mod);
mod->setModificationPattern(str_split[1]);
mod->setSink(m_sink);
mod->setProtNter(Nter);
mod->setProtCter(Cter);
mod->setProtCter(else_prot);
m_pepModificatorPtrList.push_back(mod);
mp_lastPeptideSinkInterface->setSink(mod);
mp_lastPeptideSinkInterface = mod;
mp_firstModificator = mod;
}

References pappso::Cter, pappso::AaModification::getInstance(), m_pepModificatorPtrList, m_sink, mp_firstModificator, mp_lastPeptideSinkInterface, pappso::Nter, pappso::PeptideModificatorBase::setModificationPattern(), pappso::PeptideFixedModificationBuilder::setProtCter(), pappso::PeptideFixedModificationBuilder::setProtNter(), pappso::PeptideFixedModificationBuilder::setSink(), and pappso::PeptideSpSinkInterface::setSink().

Referenced by addLabeledModificationString().

## parsePotentialModification()

void PeptideModificatorPipeline::parsePotentialModification | ( | const QString & | mod_str,
|  | bool | Nter,
|  | bool | Cter,
|  | bool | else_prot
| ) |  |

private

Definition at line 209 of file peptidemodificatorpipeline.cpp.

{
QStringList str_split = mod_str.split("@", Qt::SkipEmptyParts);
QString mod_acc_str = str_split[0];
QStringList str_acc_split = mod_acc_str.split("(", Qt::SkipEmptyParts);
pappso::AaModificationP aa_mod =
AaModification::getInstance(str_acc_split[0]);
PeptideVariableModificationBuilder *mod =
new PeptideVariableModificationBuilder(aa_mod);
// qDebug() << "PeptideModificatorPipeline::parsePotentialModification " << ;
if(str_acc_split.length() == 2)
{
QStringList max_num_str_list =
str_acc_split[1].replace(")", "").split("-", Qt::SkipEmptyParts);
if(max_num_str_list.length() == 1)
{
mod->setModificationCounter(max_num_str_list[0].toUInt());
}
else if(max_num_str_list.length() == 2)
{
mod->setMinNumberMod(max_num_str_list[0].toUInt());
mod->setMaxNumberMod(max_num_str_list[1].toUInt());
}
}
mod->setModificationPattern(str_split[1]);
mod->setSink(m_sink);
mod->setProtNter(Nter);
mod->setProtCter(Cter);
mod->setProtElse(else_prot);
m_pepModificatorPtrList.push_back(mod);
if(mp_firstModificator == nullptr)
{
mp_firstModificator = mod;
}
else
{
mp_lastPeptideSinkInterface->setSink(mod);
}
mp_lastPeptideSinkInterface = mod;
}
pappso::PeptideVariableModificationBuilder
Modify a peptide shared pointer with a variable modification on one AA.
Definition: peptidevariablemodificationbuilder.h:38
pappso::PeptideVariableModificationBuilder::setSink
void setSink(PeptideModificatorInterface *sink) override
Definition: peptidevariablemodificationbuilder.h:70
pappso::PeptideVariableModificationBuilder::setMinNumberMod
void setMinNumberMod(unsigned int min_num)
Definition: peptidevariablemodificationbuilder.h:59
pappso::PeptideVariableModificationBuilder::setMaxNumberMod
void setMaxNumberMod(unsigned int max_num)
Definition: peptidevariablemodificationbuilder.h:54
pappso::PeptideVariableModificationBuilder::setModificationCounter
void setModificationCounter(unsigned int counter)
Definition: peptidevariablemodificationbuilder.h:64
pappso::PeptideVariableModificationBuilder::setProtNter
void setProtNter(bool arg1)
this modification concerns the Nter peptide
Definition: peptidevariablemodificationbuilder.h:79
pappso::PeptideVariableModificationBuilder::setProtElse
void setProtElse(bool arg1)
this modification concerns all peptides between Nter and Cter
Definition: peptidevariablemodificationbuilder.h:93
pappso::PeptideVariableModificationBuilder::setProtCter
void setProtCter(bool arg1)
this modification concerns the Cter peptide
Definition: peptidevariablemodificationbuilder.h:86

References pappso::Cter, pappso::AaModification::getInstance(), m_pepModificatorPtrList, m_sink, mp_firstModificator, mp_lastPeptideSinkInterface, pappso::Nter, pappso::PeptideVariableModificationBuilder::setMaxNumberMod(), pappso::PeptideVariableModificationBuilder::setMinNumberMod(), pappso::PeptideVariableModificationBuilder::setModificationCounter(), pappso::PeptideModificatorBase::setModificationPattern(), pappso::PeptideVariableModificationBuilder::setProtCter(), pappso::PeptideVariableModificationBuilder::setProtElse(), pappso::PeptideVariableModificationBuilder::setProtNter(), pappso::PeptideVariableModificationBuilder::setSink(), and pappso::PeptideSpSinkInterface::setSink().

Referenced by privAddPotentialModificationString().

## privAddFixedModificationString()

void PeptideModificatorPipeline::privAddFixedModificationString | ( | const QString & | mod_str,
|  | bool | Nter,
|  | bool | Cter,
|  | bool | else_prot
| ) |  |

private

Definition at line 115 of file peptidemodificatorpipeline.cpp.

{
//"MOD:00397@C, MOD:00398@R"
if(mp_peptideModificatorTee != nullptr)
{
throw PappsoException(
QObject::tr("Unable to add fixed modification string after "
"addLabeledModificationString function"));
}
QStringList mod_list_str =
mod_str.simplified().replace(" ", "").split(",", Qt::SkipEmptyParts);
for(auto i = 0; i < mod_list_str.size(); ++i)
{
parseFixedModification(mod_list_str[i], Nter, Cter, else_prot);
}
}
pappso::PeptideModificatorPipeline::parseFixedModification
void parseFixedModification(const QString &mod_str, bool Nter, bool Cter, bool else_prot)
Definition: peptidemodificatorpipeline.cpp:135

References pappso::Cter, mp_peptideModificatorTee, pappso::Nter, and parseFixedModification().

Referenced by addFixedCterModificationString(), addFixedModificationString(), and addFixedNterModificationString().

## privAddPotentialModificationString()

void PeptideModificatorPipeline::privAddPotentialModificationString | ( | const QString & | mod_str,
|  | bool | Nter,
|  | bool | Cter,
|  | bool | else_prot
| ) |  |

private

Definition at line 188 of file peptidemodificatorpipeline.cpp.

{
//"MOD:00397@C, MOD:00398@R"
if(mp_peptideModificatorTee != nullptr)
{
throw PappsoException(
QObject::tr("Unable to add potential modification string after "
"addLabeledModificationString function"));
}
QStringList mod_list_str =
mod_str.simplified().replace(" ", "").split(",", Qt::SkipEmptyParts);
for(auto i = 0; i < mod_list_str.size(); ++i)
{
parsePotentialModification(mod_list_str[i], Nter, Cter, else_prot);
}
}
pappso::PeptideModificatorPipeline::parsePotentialModification
void parsePotentialModification(const QString &mod_str, bool Nter, bool Cter, bool else_prot)
Definition: peptidemodificatorpipeline.cpp:209

References pappso::Cter, mp_peptideModificatorTee, pappso::Nter, and parsePotentialModification().

Referenced by addPotentialCterModificationString(), addPotentialModificationString(), and addPotentialNterModificationString().

## setPeptide()

void PeptideModificatorPipeline::setPeptide | ( | std::int8_t | sequence_database_id,
|  | const ProteinSp & | protein_sp,
|  | bool | is_decoy,
|  | const QString & | peptide,
|  | unsigned int | start,
|  | bool | is_nter,
|  | unsigned int | missed_cleavage_number,
|  | bool | semi_enzyme
| ) |  |

override virtual

function to give the products of a protein digestion by an enzyme

Parameters

  sequence_database_id | integer that references the sequence fatabase (file, stream, url...)
  protein_sp | shared pointer on the protein that was digested
  is_decoy | tell if the current protein is a decoy (true) or normal (false) protein
  peptide | amino acid sequence of the peptide (string) produced by the digestion
  start | the position of the first amino acid of the peptide in the original protein sequence. the first amino acid of the protein is at position 1.
  is_nter | boolean to tell if the peptide is an Nter peptide (to allow Methionin Nter removal)
  missed_cleavage_number | number of missed cleavage sites (that the enzyme has not cut) fot the product
  semi_enzyme | boolean that tells if this peptide is the produce of a semi enzymatic lysis

Implements pappso::EnzymeProductInterface.

Definition at line 369 of file peptidemodificatorpipeline.cpp.

{
qDebug() << "PeptideModificatorPipeline::setPeptide begin";
Peptide peptide(peptide_str);
PeptideSp peptide_sp = peptide.makePeptideSp();
qDebug() << "PeptideModificatorPipeline::setPeptide m_sink->setPeptideSp";
setPeptideSp(sequence_database_id,
protein_sp,
is_decoy,
peptide_sp,
start,
is_nter,
missed_cleavage_number,
semi_enzyme);
qDebug() << "PeptideModificatorPipeline::setPeptide end";
}
pappso::PeptideModificatorPipeline::setPeptideSp
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
Definition: peptidemodificatorpipeline.cpp:334
pappso::Peptide
Definition: peptide.h:93
pappso::PeptideSp
std::shared_ptr< const Peptide > PeptideSp
Definition: aamodification.h:47

References pappso::Peptide::makePeptideSp(), and setPeptideSp().

## setPeptideSp()

void PeptideModificatorPipeline::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
| ) |  |

override virtual

function to give the products of modifications for a digested peptide

Parameters

  sequence_database_id | integer that references the sequence fatabase (file, stream, url...)
  protein_sp | shared pointer on the protein that was initialy digested
  is_decoy | tell if the current protein is a decoy (true) or normal (false) protein
  peptide | Peptide object containing sequence and possible modifications
  start | the position of the first amino acid of the peptide in the original protein sequence. the first amino acid of the protein is at position 1.
  is_nter | boolean to tell if the peptide is an Nter peptide (to allow Methionin Nter removal)
  missed_cleavage_number | number of missed cleavage sites (that the enzyme has not cut) fot the product
  semi_enzyme | boolean that tells if this peptide is the produce of a semi enzymatic lysis

Implements pappso::PeptideModificatorInterface.

Definition at line 334 of file peptidemodificatorpipeline.cpp.

{
if(mp_firstModificator == nullptr)
{
m_sink->setPeptideSp(sequence_database_id,
protein_sp,
is_decoy,
peptide_sp_original,
start,
is_nter,
missed_cleavage_number,
semi_enzyme);
}
else
{
mp_firstModificator->setPeptideSp(sequence_database_id,
protein_sp,
is_decoy,
peptide_sp_original,
start,
is_nter,
missed_cleavage_number,
semi_enzyme);
}
}
pappso::PeptideModificatorInterface::setPeptideSp
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

References m_sink, mp_firstModificator, and pappso::PeptideModificatorInterface::setPeptideSp().

Referenced by setPeptide().

## setSink()

void PeptideModificatorPipeline::setSink | ( | PeptideModificatorInterface * | sink | ) |

override virtual

Implements pappso::PeptideSpSinkInterface.

Definition at line 81 of file peptidemodificatorpipeline.cpp.

{
if(mp_peptideModificatorTee != nullptr)
{
throw PappsoException(QObject::tr(
"Please use setSink before addLabeledModificationString function"));
}
m_sink = sink;
if(mp_firstModificator != nullptr)
{
mp_lastPeptideSinkInterface->setSink(m_sink);
}
};

References m_sink, mp_firstModificator, mp_lastPeptideSinkInterface, mp_peptideModificatorTee, and pappso::PeptideSpSinkInterface::setSink().

## Member Data Documentation

## m_pepModificatorPtrList

std::vector<PeptideModificatorInterface *> pappso::PeptideModificatorPipeline::m_pepModificatorPtrList

private

Definition at line 86 of file peptidemodificatorpipeline.h.

Referenced by PeptideModificatorPipeline(), ~PeptideModificatorPipeline(), parseFixedModification(), parseLabeledModification(), and parsePotentialModification().

## m_sink

PeptideModificatorInterface* pappso::PeptideModificatorPipeline::m_sink = nullptr

private

Definition at line 80 of file peptidemodificatorpipeline.h.

Referenced by PeptideModificatorPipeline(), addLabeledModificationString(), parseFixedModification(), parseLabeledModification(), parsePotentialModification(), setPeptideSp(), and setSink().

## mp_firstModificator

PeptideModificatorInterface* pappso::PeptideModificatorPipeline::mp_firstModificator = nullptr

private

Definition at line 84 of file peptidemodificatorpipeline.h.

Referenced by PeptideModificatorPipeline(), addLabeledModificationString(), parseFixedModification(), parseLabeledModification(), parsePotentialModification(), setPeptideSp(), and setSink().

## mp_lastPeptideSinkInterface

PeptideSpSinkInterface* pappso::PeptideModificatorPipeline::mp_lastPeptideSinkInterface

private

Definition at line 82 of file peptidemodificatorpipeline.h.

Referenced by PeptideModificatorPipeline(), addLabeledModificationString(), parseFixedModification(), parseLabeledModification(), parsePotentialModification(), and setSink().

## mp_peptideModificatorTee

PeptideModificatorTee* pappso::PeptideModificatorPipeline::mp_peptideModificatorTee = nullptr

private

Definition at line 78 of file peptidemodificatorpipeline.h.

Referenced by PeptideModificatorPipeline(), ~PeptideModificatorPipeline(), addLabeledModificationString(), privAddFixedModificationString(), privAddPotentialModificationString(), and setSink().

The documentation for this class was generated from the following files:

- pappsomspp/protein/peptidemodificatorpipeline.h
- pappsomspp/protein/peptidemodificatorpipeline.cpp