libpappsomspp
Library for mass spectrometry
pappso::PeptideFragmentIonListBase Class Reference

#include <peptidefragmentionlistbase.h>

Public Member Functions

 PeptideFragmentIonListBase (const PeptideSp &peptide, const IonList &ions)
 
 PeptideFragmentIonListBase (const PeptideFragmentIonListBase &other)
 
virtual ~PeptideFragmentIonListBase ()
 
PeptideFragmentIonListBaseSp makePeptideFragmentIonListBaseSp () const
 
const std::list< PeptideIon > & getIonList () const
 
unsigned int getPhosphorylationNumber () const
 
virtual const PeptideSpgetPeptideSp () const
 
const std::list< PeptideFragmentIonSpgetPeptideFragmentIonSp (PeptideIon ion_type) const
 
const PeptideFragmentIonSpgetPeptideFragmentIonSp (PeptideIon ion_type, unsigned int size) const
 
const PeptideFragmentIonSpgetPeptideFragmentIonSp (PeptideIon ion_type, unsigned int size, unsigned int number_of_neutral_phospho_loss) const
 
std::list< PeptideFragmentIonSp >::const_iterator begin () const
 
std::list< PeptideFragmentIonSp >::const_iterator end () const
 
const std::list< PeptideFragmentIonSp > & getPeptideFragmentIonList () const
 
unsigned int size () const
 

Static Public Member Functions

static std::list< PeptideIongetCIDionList ()
 
static std::list< PeptideIongetETDionList ()
 

Static Protected Member Functions

static const std::list< PeptideFragmentSpgetPeptideFragmentList (const PeptideSp &peptide)
 

Protected Attributes

const PeptideSp msp_peptide
 
std::list< PeptideFragmentIonSpmsp_peptide_fragment_ion_list
 
IonList m_ionList
 
unsigned int m_phosphorylationNumber
 

Private Types

using IonList = std::list< PeptideIon >
 

Detailed Description

Definition at line 66 of file peptidefragmentionlistbase.h.

Member Typedef Documentation

◆ IonList

Definition at line 68 of file peptidefragmentionlistbase.h.

Constructor & Destructor Documentation

◆ PeptideFragmentIonListBase() [1/2]

pappso::PeptideFragmentIonListBase::PeptideFragmentIonListBase ( const PeptideSp peptide,
const IonList ions 
)

Definition at line 99 of file peptidefragmentionlistbase.cpp.

100  {
101  for(auto &&ion_type : m_ionList)
102  {
103  // qDebug()<<
104  // "PeptideFragmentIonListBase::PeptideFragmentIonListBase
105  // ition";
106  if((ion_type == PeptideIon::y) ||
107  (ion_type == PeptideIon::ystar) ||
108  (ion_type == PeptideIon::yo) ||
109  (ion_type == PeptideIon::z))
110  {
112  std::make_shared<PeptideFragmentIon>(fragment_sp,
113  ion_type));
114  }
115  else if(ion_type == PeptideIon::yp)
116  {
117  if(phosphorylation_mod == nullptr)
118  {
119  phosphorylation_mod =
120  AaModification::getInstance("MOD:00696");
122  peptide.get()->getNumberOfModification(
123  phosphorylation_mod);
124  }
125  for(unsigned int i = 0; i < m_phosphorylationNumber; i++)
126  {
128  std::make_shared<PeptideFragmentIon>(
129  fragment_sp, ion_type, i + 1));
130  }
131  }
132  }
133  }
134  else
135  {
136  for(auto &&ion_type : m_ionList)
137  {
138  // b, bstar, bo, a
139  if((ion_type == PeptideIon::b) ||
140  (ion_type == PeptideIon::bstar) ||
141  (ion_type == PeptideIon::bo) ||
142  (ion_type == PeptideIon::a) || (ion_type == PeptideIon::c))
143  {
145  std::make_shared<PeptideFragmentIon>(fragment_sp,
146  ion_type));
147  }
148  else if(ion_type == PeptideIon::bp)
149  {
150  if(phosphorylation_mod == nullptr)
151  {
152  phosphorylation_mod =
153  AaModification::getInstance("MOD:00696");
155  peptide.get()->getNumberOfModification(
156  phosphorylation_mod);
157  }
158  for(unsigned int i = 0; i < m_phosphorylationNumber; i++)
159  {
161  std::make_shared<PeptideFragmentIon>(
162  fragment_sp, ion_type, i + 1));
163  }
164  }
165  }
166  }
167  }
168  qDebug() << "PeptideFragmentIonListBase::PeptideFragmentIonListBase end "
169  << ions.size();
170  }
171  catch(PappsoException &exception_pappso)
172  {
173  QString errorStr =
174  QObject::tr(
175  "ERROR building PeptideFragmentIonListBase, PAPPSO exception:\n%1")
176  .arg(exception_pappso.qwhat());
177  qDebug() << "PeptideFragmentIonListBase::PeptideFragmentIonListBase "
178  "PappsoException :\n"
179  << errorStr;
180  throw PappsoException(errorStr);
181  }
182  catch(std::exception &exception_std)
183  {
184  QString errorStr =
185  QObject::tr(
186  "ERROR building PeptideFragmentIonListBase, std exception:\n%1")
187  .arg(exception_std.what());
188  qDebug() << "PeptideFragmentIonListBase::PeptideFragmentIonListBase "
189  "std::exception :\n"
190  << errorStr;
191  throw PappsoException(errorStr);
192  }
193 }
194 
196  const PeptideFragmentIonListBase &other)
197  : msp_peptide(other.msp_peptide),
199  m_ionList(other.m_ionList),
201 {
202 }
203 
204 
207 {
208  return std::make_shared<const PeptideFragmentIonListBase>(*this);
209 }
210 
211 
213 {
214 }

References pappso::AaModification::getInstance(), pappso::y, pappso::yo, pappso::yp, pappso::ystar, and pappso::z.

◆ PeptideFragmentIonListBase() [2/2]

pappso::PeptideFragmentIonListBase::PeptideFragmentIonListBase ( const PeptideFragmentIonListBase other)

Definition at line 216 of file peptidefragmentionlistbase.cpp.

218 {
219  std::list<PeptideFragmentSp> peptide_fragment_list;
220 
221  unsigned int max = peptide.get()->size() - 1;
222  for(unsigned int i = 0; i < max; i++)
223  {

References pappso::max, and pappso::Nter.

◆ ~PeptideFragmentIonListBase()

pappso::PeptideFragmentIonListBase::~PeptideFragmentIonListBase ( )
virtual

Definition at line 233 of file peptidefragmentionlistbase.cpp.

235 {

References msp_peptide_fragment_ion_list.

Member Function Documentation

◆ begin()

std::list<PeptideFragmentIonSp>::const_iterator pappso::PeptideFragmentIonListBase::begin ( ) const
inline

Definition at line 109 of file peptidefragmentionlistbase.h.

112  {

◆ end()

std::list<PeptideFragmentIonSp>::const_iterator pappso::PeptideFragmentIonListBase::end ( ) const
inline

Definition at line 115 of file peptidefragmentionlistbase.h.

◆ getCIDionList()

std::list< PeptideIon > pappso::PeptideFragmentIonListBase::getCIDionList ( )
static

Definition at line 62 of file peptidefragmentionlistbase.cpp.

74 {
75  return m_ionList;
76 }
77 

Referenced by pappso::MassSpectrumWidget::MassSpectrumWidget().

◆ getETDionList()

std::list< PeptideIon > pappso::PeptideFragmentIonListBase::getETDionList ( )
static

Definition at line 80 of file peptidefragmentionlistbase.cpp.

80  : msp_peptide(peptide), m_ionList(ions)
81 {
82  try
83  {
84  qDebug()
85  << "PeptideFragmentIonListBase::PeptideFragmentIonListBase begin "
86  << ions.size();
87  std::list<PeptideFragmentSp> fragment_list =
89 
91  AaModificationP phosphorylation_mod = nullptr;

References getPeptideFragmentList().

◆ getIonList()

const std::list< PeptideIon > & pappso::PeptideFragmentIonListBase::getIonList ( ) const

Definition at line 94 of file peptidefragmentionlistbase.cpp.

94  : fragment_list)
95  {
96  // qDebug()<< "PeptideFragmentIonListBase::PeptideFragmentIonListBase
97  // ition";

◆ getPeptideFragmentIonList()

const std::list<PeptideFragmentIonSp>& pappso::PeptideFragmentIonListBase::getPeptideFragmentIonList ( ) const
inline

Definition at line 122 of file peptidefragmentionlistbase.h.

◆ getPeptideFragmentIonSp() [1/3]

const std::list< PeptideFragmentIonSp > pappso::PeptideFragmentIonListBase::getPeptideFragmentIonSp ( PeptideIon  ion_type) const

Definition at line 255 of file peptidefragmentionlistbase.cpp.

260 {
261  for(auto &&peptide_fragment_ion_sp : msp_peptide_fragment_ion_list)
262  {
263  if(peptide_fragment_ion_sp.get()->getPeptideIonType() == ion_type)
264  {
265  if(peptide_fragment_ion_sp.get()->size() == size)
266  {

References msp_peptide_fragment_ion_list, and size().

◆ getPeptideFragmentIonSp() [2/3]

const PeptideFragmentIonSp & pappso::PeptideFragmentIonListBase::getPeptideFragmentIonSp ( PeptideIon  ion_type,
unsigned int  size 
) const

Definition at line 269 of file peptidefragmentionlistbase.cpp.

270  {
271  return (peptide_fragment_ion_sp);
272  }
273  }
274  }

◆ getPeptideFragmentIonSp() [3/3]

const PeptideFragmentIonSp & pappso::PeptideFragmentIonListBase::getPeptideFragmentIonSp ( PeptideIon  ion_type,
unsigned int  size,
unsigned int  number_of_neutral_phospho_loss 
) const

Definition at line 277 of file peptidefragmentionlistbase.cpp.

◆ getPeptideFragmentList()

const std::list< PeptideFragmentSp > pappso::PeptideFragmentIonListBase::getPeptideFragmentList ( const PeptideSp peptide)
staticprotected

Definition at line 238 of file peptidefragmentionlistbase.cpp.

238  {
239  if(peptide_fragment_ion_sp.get()->getPeptideIonType() == ion_type)
240  {
241  ion_list.push_back(peptide_fragment_ion_sp);
242  }
243  }
244  return (ion_list);
245 }
246 
247 const PeptideFragmentIonSp &
249  unsigned int size) const
250 {
251 
252  return getPeptideFragmentIonSp(ion_type, size, 0);

Referenced by getETDionList().

◆ getPeptideSp()

virtual const PeptideSp& pappso::PeptideFragmentIonListBase::getPeptideSp ( ) const
inlinevirtual

Definition at line 93 of file peptidefragmentionlistbase.h.

95  {
96  return msp_peptide_fragment_ion_list.end();

◆ getPhosphorylationNumber()

unsigned int pappso::PeptideFragmentIonListBase::getPhosphorylationNumber ( ) const
inline

Definition at line 87 of file peptidefragmentionlistbase.h.

89  {
90  return msp_peptide_fragment_ion_list.begin();

◆ makePeptideFragmentIonListBaseSp()

PeptideFragmentIonListBaseSp pappso::PeptideFragmentIonListBase::makePeptideFragmentIonListBaseSp ( ) const

Definition at line 227 of file peptidefragmentionlistbase.cpp.

◆ size()

unsigned int pappso::PeptideFragmentIonListBase::size ( ) const
inline

Definition at line 132 of file peptidefragmentionlistbase.h.

Referenced by getPeptideFragmentIonSp().

Member Data Documentation

◆ m_ionList

IonList pappso::PeptideFragmentIonListBase::m_ionList
protected

Definition at line 73 of file peptidefragmentionlistbase.h.

◆ m_phosphorylationNumber

unsigned int pappso::PeptideFragmentIonListBase::m_phosphorylationNumber
protected

Definition at line 74 of file peptidefragmentionlistbase.h.

◆ msp_peptide

const PeptideSp pappso::PeptideFragmentIonListBase::msp_peptide
protected

Definition at line 71 of file peptidefragmentionlistbase.h.

◆ msp_peptide_fragment_ion_list

std::list<PeptideFragmentIonSp> pappso::PeptideFragmentIonListBase::msp_peptide_fragment_ion_list
protected

The documentation for this class was generated from the following files:
pappso::PeptideIon::b
@ b
Nter acylium ions.
pappso::PeptideIon::a
@ a
Nter aldimine ions.
pappso::PeptideFragmentIonListBase::msp_peptide_fragment_ion_list
std::list< PeptideFragmentIonSp > msp_peptide_fragment_ion_list
Definition: peptidefragmentionlistbase.h:72
pappso::PeptideFragmentIonListBase::getPeptideFragmentIonSp
const std::list< PeptideFragmentIonSp > getPeptideFragmentIonSp(PeptideIon ion_type) const
Definition: peptidefragmentionlistbase.cpp:255
pappso::PeptideIon::yo
@ yo
Cter amino ions + H2O loss.
pappso::PeptideFragmentIonListBase::m_ionList
IonList m_ionList
Definition: peptidefragmentionlistbase.h:73
pappso::PeptideFragmentIonListBase::PeptideFragmentIonListBase
PeptideFragmentIonListBase(const PeptideSp &peptide, const IonList &ions)
Definition: peptidefragmentionlistbase.cpp:99
pappso::PeptideIon::bstar
@ bstar
Nter acylium ions + NH3 loss.
pappso::PeptideFragmentIonListBase::~PeptideFragmentIonListBase
virtual ~PeptideFragmentIonListBase()
Definition: peptidefragmentionlistbase.cpp:233
pappso::PeptideFragmentIonListBase::makePeptideFragmentIonListBaseSp
PeptideFragmentIonListBaseSp makePeptideFragmentIonListBaseSp() const
Definition: peptidefragmentionlistbase.cpp:227
pappso::PeptideIon
PeptideIon
PeptideIon enum defines all types of ions (Nter or Cter)
Definition: types.h:372
pappso::PeptideFragmentIonListBase::msp_peptide
const PeptideSp msp_peptide
Definition: peptidefragmentionlistbase.h:71
pappso::PeptideFragmentIonSp
std::shared_ptr< const PeptideFragmentIon > PeptideFragmentIonSp
Definition: peptidefragmention.h:65
pappso::AaModificationP
const AaModification * AaModificationP
Definition: aamodification.h:73
pappso::PeptideFragmentIonListBase::m_phosphorylationNumber
unsigned int m_phosphorylationNumber
Definition: peptidefragmentionlistbase.h:74
pappso::PeptideIon::bo
@ bo
Nter acylium ions + H2O loss.
pappso::PeptideIon::bp
@ bp
pappso::AaModification::getInstance
static AaModificationP getInstance(const QString &accession)
Definition: aamodification.cpp:388
pappso::XicExtractMethod::max
@ max
maximum of intensities
pappso::PeptideFragmentIonListBase::size
unsigned int size() const
Definition: peptidefragmentionlistbase.h:132
pappso::PeptideIon::z
@ z
Cter carbocations.
pappso::PeptideIon::c
@ c
Nter amino ions.
pappso::PeptideIon::yp
@ yp
pappso::PeptideFragmentIonListBase::getPeptideFragmentList
static const std::list< PeptideFragmentSp > getPeptideFragmentList(const PeptideSp &peptide)
Definition: peptidefragmentionlistbase.cpp:238
pappso::PeptideIon::y
@ y
Cter amino ions.
pappso::PeptideIon::ystar
@ ystar
Cter amino ions + NH3 loss.
pappso::PeptideFragmentIonListBaseSp
std::shared_ptr< const PeptideFragmentIonListBase > PeptideFragmentIonListBaseSp
Definition: peptidefragmentionlistbase.h:62