67 std::vector<Aa>::const_iterator it(peptide.
begin());
68 std::vector<Aa>::const_iterator end(peptide.
end());
93 <<
" cumulative_mass=" << cumulative_mass;
94 cumulative_mass += it->getMass();
96 (it->getLetter() ==
'P'))
108 std::vector<Aa>::const_reverse_iterator rit(peptide.
rbegin());
109 std::vector<Aa>::const_reverse_iterator ritf(peptide.
rbegin());
110 std::vector<Aa>::const_reverse_iterator rend(peptide.
rend());
112 cumulative_mass = rit->getMass();
117 (ritf->getLetter() ==
'P'))
133 cumulative_mass += rit->getMass();
135 (ritf != peptide.
rend()) && (ritf->getLetter() ==
'P'))
164 mass_list.push_back(mass +
m_ionDeltaMz[(std::int8_t)ion_type]);
171 unsigned int charge)
const
191 std::vector<SimplePeakIonMatch> &peak_match_list,
195 unsigned int charge)
const
197 std::vector<pappso_double> mass_list;
203 std::vector<pappso_double>::iterator it_mz = mass_list.begin();
204 std::vector<pappso_double>::iterator it_mz_end = mass_list.end();
207 std::vector<DataPoint>::const_iterator it_peak = spectrum.begin();
208 std::vector<DataPoint>::const_iterator it_peak_end = spectrum.end();
209 unsigned int ion_size = 1;
210 while((it_peak != it_peak_end) && (it_mz != it_mz_end))
212 MzRange massrange(it_peak->x, precision);
213 if((*it_mz) > massrange.
upper())
218 if((*it_mz) < massrange.
lower())
224 peak_match_list.push_back(
225 {(*it_peak), ion_type, ion_size, charge, (*it_mz)});
pappso_double getMass() const
Class to represent a mass spectrum.
pappso_double lower() const
pappso_double upper() const
pappso_double[20] ionDeltatMzMassMap
void pushBackIonMasses(std::vector< pappso_double > &mass_list, Enums::PeptideIon ion_type) const
~PeptideRawFragmentMasses()
void pushBackMatchSpectrum(std::vector< SimplePeakIonMatch > &peak_match_list, const MassSpectrum &spectrum, PrecisionPtr precision, Enums::PeptideIon ion_type, unsigned int charge) const
PeptideRawFragmentMasses(const Peptide &peptide, RawFragmentationMode mode)
std::vector< pappso_double > m_cumulativeCterMasses
cumulative Cter masses (without internal Cter modification)
std::vector< pappso_double > m_cumulativeNterMasses
cumulative Nter masses (without internal Nter modification)
void pushBackIonMz(std::vector< pappso_double > &mass_list, Enums::PeptideIon ion_type, unsigned int charge) const
static ionDeltatMzMassMap m_ionDeltaMz
static pappso_double getDeltaMass(Enums::PeptideIon ion_type)
AaModificationP getCterModification() const
std::vector< Aa >::const_reverse_iterator rend() const
std::vector< Aa >::const_reverse_iterator rbegin() const
AaModificationP getCleavageCterModification() const
AaModificationP getNterModification() const
AaModificationP getCleavageNterModification() const
std::vector< Aa >::iterator begin()
std::vector< Aa >::iterator end()
PeptideIon
Enums::PeptideIon enum defines all types of ions (Nter or Cter)
@ astar
Nter aldimine ions + NH3 loss.
@ ystar
Cter amino ions + NH3 loss.
@ yo
Cter amino ions + H2O loss.
@ bstar
Nter acylium ions + NH3 loss.
@ bo
Nter acylium ions + H2O loss.
@ ao
Nter aldimine ions + H2O loss.
tries to keep as much as possible monoisotopes, removing any possible C13 peaks and changes multichar...
const pappso_double MASSCO(MASSCARBON+MASSOXYGEN)
const pappso_double MHPLUS(1.007276466879)
double pappso_double
A type definition for doubles.
const pappso_double MPROTIUM(1.007825032241)
const pappso_double MASSH2O((MPROTIUM *2)+MASSOXYGEN)
bool peptideIonIsNter(Enums::PeptideIon ion_type)
tells if an ion is Nter
const pappso_double MASSNH3((MPROTIUM *3)+MASSNITROGEN)
const pappso_double MASSNITROGEN(14.0030740048)
const pappso_double MASSOXYGEN(15.99491461956)
const PrecisionBase * PrecisionPtr