From ef940b5b45e36003cea54d7edcba996db1f921c7 Mon Sep 17 00:00:00 2001 From: Olivier Langella <Olivier.Langella@moulon.inra.fr> Date: Sun, 23 Apr 2017 15:16:00 +0200 Subject: [PATCH] new hash sample scan key computed in constructor --- src/core/peptidematch.cpp | 10 +++++++++- src/core/peptidematch.h | 3 +++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/src/core/peptidematch.cpp b/src/core/peptidematch.cpp index c8e8c959e..5761314c3 100644 --- a/src/core/peptidematch.cpp +++ b/src/core/peptidematch.cpp @@ -23,9 +23,13 @@ #include "peptidematch.h" +std::hash<std::string> PeptideMatch::_hash_fn; + PeptideMatch::PeptideMatch(MsRun * msrunid_sp, unsigned int scan) { _msrunid_sp = msrunid_sp; _scan = scan; + + _hash_sample_scan = PeptideMatch::_hash_fn (QString("%1 %2").arg(msrunid_sp->getXmlId()).arg(_scan).toStdString()); } void PeptideMatch::updateAutomaticFilters(const AutomaticFilterParameters & automatic_filter_parameters) { @@ -42,6 +46,10 @@ void PeptideMatch::setEvalue(pappso::pappso_double evalue) { _evalue = evalue; } + +std::size_t PeptideMatch::getHashSampleScan() const { + return _hash_sample_scan; +} pappso::pappso_double PeptideMatch::getEvalue() const { return _evalue; } @@ -76,7 +84,7 @@ ValidationState PeptideMatch::getValidationState() const { return ValidationState::validAndChecked; } else if (isValid()) { return ValidationState::valid; - } + } return ValidationState::notValid; } diff --git a/src/core/peptidematch.h b/src/core/peptidematch.h index 3e20533ac..6d885f715 100644 --- a/src/core/peptidematch.h +++ b/src/core/peptidematch.h @@ -35,6 +35,7 @@ class PeptideMatch { public : PeptideMatch(MsRun * msrunid_sp, unsigned int scan); + std::size_t getHashSampleScan() const; void setRetentionTime(pappso::pappso_double rt); void setEvalue(pappso::pappso_double evalue); @@ -80,8 +81,10 @@ public : ValidationState getValidationState() const; private : + static std::hash<std::string> _hash_fn; MsRun * _msrunid_sp; unsigned int _scan; + size_t _hash_sample_scan; pappso::GrpPeptideSp _sp_grp_peptide; PeptideXtpSp _peptide_sp; pappso::pappso_double _rt; -- GitLab