47                                       unsigned int max_charge,
 
   48                                       const std::list<Enums::PeptideIon> &ion_type_list_in)
 
   53  std::list<DataPoint> peak_list(spectrum.begin(), spectrum.end());
 
   56  std::list<Enums::PeptideIon> ion_type_list(ion_type_list_in);
 
   69  for(
auto ion_type : ion_type_list)
 
   74      for(
unsigned int charge = 1; charge <= max_charge; charge++)
 
   76          for(
auto &&ion : ion_list)
 
   80              if(it_peak != peak_list.end())
 
   88                  peak_list.erase(it_peak);
 
 
   97  std::vector<PeptideFragmentIonSp> &v_peptide_fragment_ion,
 
   98  std::vector<unsigned int> &v_peptide_fragment_ion_charge,
 
  102  qDebug() << __FILE__ << 
" " << __FUNCTION__ << 
" " << __LINE__;
 
  106  if(v_peptide_fragment_ion.size() != v_peptide_fragment_ion_charge.size())
 
  109                                        "v_peptide_fragment_ion_charge.size() %2")
 
  110                              .arg(v_peptide_fragment_ion.size())
 
  111                              .arg(v_peptide_fragment_ion_charge.size()));
 
  115  auto ionIt    = v_peptide_fragment_ion.begin();
 
  116  auto chargeIt = v_peptide_fragment_ion_charge.begin();
 
  117  std::list<DataPoint> peak_list(spectrum.begin(), spectrum.end());
 
  119  while(ionIt != v_peptide_fragment_ion.end())
 
  121      std::list<DataPoint>::iterator it_peak = 
getBestPeakIterator(peak_list, *ionIt, *chargeIt);
 
  122      if(it_peak != peak_list.end())
 
  126          peak_list.erase(it_peak);
 
  132  qDebug() << __FILE__ << 
" " << __FUNCTION__ << 
" " << __LINE__
 
 
  139                                           unsigned int max_charge,
 
  141                                           const std::list<Enums::PeptideIon> &ion_type_list)
 
  145  qDebug() << __FILE__ << 
" " << __FUNCTION__ << 
" " << __LINE__
 
 
  151                                           unsigned int parent_charge,
 
  153                                           const std::list<Enums::PeptideIon> &ion_type_list)
 
  158  qDebug() << __FILE__ << 
" " << __FUNCTION__ << 
" " << __LINE__
 
 
  168std::list<DataPoint>::iterator
 
  171                                          unsigned int charge)
 const 
  175  std::list<DataPoint>::iterator itpeak   = peak_list.begin();
 
  176  std::list<DataPoint>::iterator itend    = peak_list.end();
 
  177  std::list<DataPoint>::iterator itselect = peak_list.end();
 
  181  while(itpeak != itend)
 
  186      if(ion.get()->matchPeak(
_precision, itpeak->x, charge))
 
  190          if(itpeak->y > best_intensity)
 
  192              best_intensity = itpeak->y;
 
 
  230const std::array<unsigned int, PEPTIDE_ION_TYPE_COUNT> &
 
Class to represent a mass spectrum.
 
virtual const PeptideFragmentIonSp & getPeptideFragmentIonSp() const
 
unsigned int getCharge() const
 
const std::list< PeptideFragmentIonSp > getPeptideFragmentIonSp(Enums::PeptideIon ion_type) const
 
virtual std::list< DataPoint >::iterator getBestPeakIterator(std::list< DataPoint > &peak_list, const PeptideFragmentIonSp &ion, unsigned int charge) const
 
bool contains(const PeptideFragmentIon *peptideFragmentIonSp, unsigned int z) const
 
std::array< unsigned int, PEPTIDE_ION_TYPE_COUNT > _ion_type_count
 
unsigned int countTotalMatchedIons() const
 
const_iterator end() const
 
unsigned int size() const
 
virtual ~PeptideSpectrumMatch()
 
std::list< PeakIonMatch > _peak_ion_match_list
 
const std::array< unsigned int, PEPTIDE_ION_TYPE_COUNT > & getIonTypeCountArray() const
 
PeptideSpectrumMatch(const MassSpectrum &spectrum, const pappso::PeptideSp &peptideSp, unsigned int parent_charge, PrecisionPtr precision, const std::list< Enums::PeptideIon > &ion_type_list)
 
std::list< PeakIonMatch >::const_iterator const_iterator
 
const_iterator begin() const
 
void privMatchIonList(const MassSpectrum &spectrum, const PeptideFragmentIonListBase &fragmentIonList, unsigned int max_charge, const std::list< Enums::PeptideIon > &ion_type_list)
 
PeptideIon
Enums::PeptideIon enum defines all types of ions (Nter or Cter)
 
tries to keep as much as possible monoisotopes, removing any possible C13 peaks and changes multichar...
 
std::shared_ptr< const PeptideFragmentIon > PeptideFragmentIonSp
 
std::shared_ptr< const Peptide > PeptideSp
 
double pappso_double
A type definition for doubles.
 
const PrecisionBase * PrecisionPtr