pappso::PeptideBuilder Class Reference

builds a peptide shared pointer from peptide string and adds fixed modifications More...

`#include <peptidebuilder.h>`

Inheritance diagram for pappso::PeptideBuilder:

## Public Member Functions

| PeptideBuilder ()
virtual | ~PeptideBuilder ()
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 | addFixedAaModification (char aa, AaModificationP modification)
void | setSink (PeptideModificatorInterface *sink) override

## Private Attributes

PeptideModificatorInterface * | m_sink = nullptr
std::list< std::pair< char, AaModificationP > > | m_fixedModificationList

## Additional Inherited Members

## Detailed Description

builds a peptide shared pointer from peptide string and adds fixed modifications

Definition at line 35 of file peptidebuilder.h.

## Constructor & Destructor Documentation

## PeptideBuilder()

pappso::PeptideBuilder::PeptideBuilder | ( |  | ) |

Definition at line 29 of file peptidebuilder.cpp.

{
}

## ~PeptideBuilder()

pappso::PeptideBuilder::~PeptideBuilder | ( |  | ) |

virtual

Definition at line 33 of file peptidebuilder.cpp.

{
}

## Member Function Documentation

## addFixedAaModification()

void pappso::PeptideBuilder::addFixedAaModification | ( | char | aa,
|  | AaModificationP | modification
| ) |  |

Definition at line 37 of file peptidebuilder.cpp.

{
m_fixedModificationList.push_back(
std::pair<char, AaModificationP>(aa, modification));
}
pappso::PeptideBuilder::m_fixedModificationList
std::list< std::pair< char, AaModificationP > > m_fixedModificationList
Definition: peptidebuilder.h:62

References m_fixedModificationList.

## setPeptide()

void pappso::PeptideBuilder::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 45 of file peptidebuilder.cpp.

{
qDebug() << "PeptideBuilder::setPeptide begin";
Peptide peptide(peptide_str);
for(auto &&aamod_pair : m_fixedModificationList)
{
std::vector<unsigned int> position_list =
peptide.getAaPositionList(aamod_pair.first);
for(auto &&position : position_list)
{
peptide.addAaModification(aamod_pair.second, position);
}
}
PeptideSp peptide_sp = peptide.makePeptideSp();
// set fixed modifications
qDebug() << "PeptideBuilder::setPeptide m_sink->setPeptideSp";
m_sink->setPeptideSp(sequence_database_id,
protein_sp,
is_decoy,
peptide_sp,
start,
is_nter,
missed_cleavage_number,
semi_enzyme);
qDebug() << "PeptideBuilder::setPeptide end";
}
pappso::PeptideBuilder::m_sink
PeptideModificatorInterface * m_sink
Definition: peptidebuilder.h:60
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
pappso::PeptideSp
std::shared_ptr< const Peptide > PeptideSp
Definition: aamodification.h:47

References pappso::Peptide::addAaModification(), pappso::Peptide::getAaPositionList(), m_fixedModificationList, m_sink, pappso::Peptide::makePeptideSp(), and pappso::PeptideModificatorInterface::setPeptideSp().

## setSink()

void pappso::PeptideBuilder::setSink | ( | PeptideModificatorInterface * | sink | ) |

inline override virtual

Implements pappso::PeptideSpSinkInterface.

Definition at line 54 of file peptidebuilder.h.

{
m_sink = sink;
};

## Member Data Documentation

## m_fixedModificationList

std::list<std::pair<char, AaModificationP> > pappso::PeptideBuilder::m_fixedModificationList

private

Definition at line 62 of file peptidebuilder.h.

Referenced by addFixedAaModification(), and setPeptide().

## m_sink

PeptideModificatorInterface* pappso::PeptideBuilder::m_sink = nullptr

private

Definition at line 60 of file peptidebuilder.h.

Referenced by setPeptide().

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

- pappsomspp/protein/peptidebuilder.h
- pappsomspp/protein/peptidebuilder.cpp