diff --git a/src/core/identificationgroup.cpp b/src/core/identificationgroup.cpp index b833fcf53070eec33b935c22f24ca744c5ec77f7..71c2ab93658d067fcff36b30b28d6d389d3749a0 100644 --- a/src/core/identificationgroup.cpp +++ b/src/core/identificationgroup.cpp @@ -231,14 +231,24 @@ std::size_t IdentificationGroup::countSubGroup()const { } void IdentificationGroup::collectMhDelta(std::vector< pappso::pappso_double> & delta_list, pappso::PrecisionUnit unit, ValidationState state) const { - std::set<const PeptideEvidence *> already_counted; + std::set<const PeptideEvidence *> peptide_evidence_list; for (auto & p_protein_match : _protein_match_list) { if (p_protein_match->getValidationState() >= state) { if (!p_protein_match->getProteinXtpSp().get()->isDecoy()) { - p_protein_match->collectMhDelta(already_counted, delta_list, unit, state); + //p_protein_match->collectMhDelta(already_counted, delta_list, unit, state); + p_protein_match->collectPeptideEvidences(peptide_evidence_list, state); } } } + for (const PeptideEvidence * p_peptide_evidence: peptide_evidence_list) { + if (unit == pappso::PrecisionUnit::ppm) { + delta_list.push_back(p_peptide_evidence->getPpmDeltaMass()); + } + else { + delta_list.push_back(p_peptide_evidence->getDeltaMass()); + } + } + } void IdentificationGroup::startGrouping (const GroupingType & grouping_type, WorkMonitorInterface * p_work_monitor) { qDebug() << "IdentificationGroup::startGrouping begin "; diff --git a/src/core/identificationgroup.h b/src/core/identificationgroup.h index fcd3e485f5418afe87b5b80c4c07fc99d5f70a3f..bfb0d532d43aa578ddca3ade8247230847a54c45 100644 --- a/src/core/identificationgroup.h +++ b/src/core/identificationgroup.h @@ -126,6 +126,10 @@ public: bool contains (const MsRun * p_msrun) const; + + /** @brief collect mass delta between theoretical mass and observed mass + * each peptide evidence is only counted once + */ void collectMhDelta(std::vector< pappso::pappso_double> & delta_list, pappso::PrecisionUnit unit, ValidationState state) const; private : diff --git a/src/core/proteinmatch.cpp b/src/core/proteinmatch.cpp index 3d43d3d7b2d85cdeae7e27def32c66e43ec67048..ced11738b2054e9aeee08d1a2adab946345df6d4 100644 --- a/src/core/proteinmatch.cpp +++ b/src/core/proteinmatch.cpp @@ -445,22 +445,6 @@ void ProteinMatch::setGroupInstance(GroupStore & group_store) { } -void ProteinMatch::collectMhDelta(std::set< const PeptideEvidence *> & already_counted, std::vector< pappso::pappso_double> & delta_list, pappso::PrecisionUnit unit, ValidationState state) const { - for (auto & peptide_match : _peptide_match_list) { - const PeptideEvidence * p_peptide_evidence = peptide_match.getPeptideEvidence(); - if ((p_peptide_evidence->getValidationState() >= state)&&(already_counted.find(p_peptide_evidence) == already_counted.end())) { - if (unit == pappso::PrecisionUnit::ppm) { - delta_list.push_back(p_peptide_evidence->getPpmDeltaMass()); - } - else { - delta_list.push_back(p_peptide_evidence->getDeltaMass()); - } - - already_counted.insert(p_peptide_evidence); - } - } -} - void ProteinMatch::collectPeptideEvidences(std::set<const PeptideEvidence *> & peptide_evidence_set, ValidationState state) const { for (auto & peptide_match : _peptide_match_list) { const PeptideEvidence * p_peptide_evidence = peptide_match.getPeptideEvidence(); diff --git a/src/core/proteinmatch.h b/src/core/proteinmatch.h index 22c31745cdeafce35d9f62345cb018338d2beb08..37ccefb7e4ac1e039c046f18c4a30e8368da2d89 100644 --- a/src/core/proteinmatch.h +++ b/src/core/proteinmatch.h @@ -114,10 +114,6 @@ public: * */ void updateAutomaticFilters(const AutomaticFilterParameters & automatic_filter_parameters); - /** @brief collect mass delta between theoretical mass and observed mass - * each peptide evidence is only counted once - */ - void collectMhDelta(std::set<const PeptideEvidence *> & already_counted, std::vector< pappso::pappso_double> & delta_list, pappso::PrecisionUnit unit, ValidationState state) const; /** @brief collect distinct peptide evidences */