void SeedListGenerator::generateSeedList(vector<PeptideIdentification>& peptides, SeedList& seeds, bool use_peptide_mass) { seeds.clear(); for (vector<PeptideIdentification>::iterator pep_it = peptides.begin(); pep_it != peptides.end(); ++pep_it) { double mz; if (!pep_it->getHits().empty() && use_peptide_mass) { pep_it->sort(); const PeptideHit& hit = pep_it->getHits().front(); Int charge = hit.getCharge(); mz = hit.getSequence().getMonoWeight(Residue::Full, charge) / double(charge); } else { mz = pep_it->getMZ(); } DPosition<2> point(pep_it->getRT(), mz); seeds.push_back(point); } }
void SeedListGenerator::convertSeedList(const FeatureMap& features, SeedList& seeds) { seeds.clear(); for (FeatureMap::ConstIterator feat_it = features.begin(); feat_it != features.end(); ++feat_it) { DPosition<2> point(feat_it->getRT(), feat_it->getMZ()); seeds.push_back(point); } }
void SeedListGenerator::generateSeedList(const MSExperiment<>& experiment, SeedList& seeds) { seeds.clear(); for (MSExperiment<>::ConstIterator exp_it = experiment.begin(); exp_it != experiment.end(); ++exp_it) { if (exp_it->getMSLevel() == 2) // MS2 spectrum -> look for precursor { MSExperiment<>::ConstIterator prec_it = experiment.getPrecursorSpectrum(exp_it); const vector<Precursor>& precursors = exp_it->getPrecursors(); DPosition<2> point(prec_it->getRT(), precursors[0].getMZ()); seeds.push_back(point); } } }