All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
PSMExplainedIonCurrent.h
Go to the documentation of this file.
1 // Copyright (c) 2002-present, OpenMS Inc. -- EKU Tuebingen, ETH Zurich, and FU Berlin
2 // SPDX-License-Identifier: BSD-3-Clause
3 //
4 // --------------------------------------------------------------------------
5 // $Maintainer: Tom Waschischeck$
6 // $Authors: Tom Waschischeck$
7 // --------------------------------------------------------------------------
8 
9 #pragma once
10 
12 #include <OpenMS/QC/QCBase.h>
14 #include <vector>
15 
16 namespace OpenMS
17 {
18  class FeatureMap;
19  class MSExperiment;
20  class PeptideIdentification;
21  class WindowMower;
22 
23  class OPENMS_DLLAPI PSMExplainedIonCurrent : public QCBase
24  {
25  public:
28 
30  virtual ~PSMExplainedIonCurrent() = default;
31 
35  struct Statistics {
36  double average_correctness = 0;
37  double variance_correctness = 0;
38  };
39 
61  void compute(FeatureMap& fmap, const MSExperiment& exp, const QCBase::SpectraMap& map_to_spectrum, ToleranceUnit tolerance_unit = ToleranceUnit::AUTO, double tolerance = 20);
62 
81  void compute(PeptideIdentificationList& pep_ids, const ProteinIdentification::SearchParameters& search_params, const MSExperiment& exp, const QCBase::SpectraMap& map_to_spectrum,
82  ToleranceUnit tolerance_unit = ToleranceUnit::AUTO, double tolerance = 20);
83 
85  const String& getName() const override;
86 
88  const std::vector<Statistics>& getResults() const;
89 
90 
95  QCBase::Status requirements() const override;
96 
97  private:
99  std::vector<Statistics> results_ {};
100 
101  static double annotatePSMExplainedIonCurrent_(PeptideIdentification& pep_id, const MSExperiment& exp, const QCBase::SpectraMap& map_to_spectrum, WindowMower& filter,
102  PSMExplainedIonCurrent::ToleranceUnit tolerance_unit, double tolerance);
103  };
104 
105 } // namespace OpenMS
A container for features.
Definition: FeatureMap.h:82
Stores and handles combinations of enum values, e.g. a set of flags as bits flipped in an UInt64.
Definition: FlagSet.h:28
In-Memory representation of a mass spectrometry run.
Definition: MSExperiment.h:49
Definition: PSMExplainedIonCurrent.h:24
void compute(FeatureMap &fmap, const MSExperiment &exp, const QCBase::SpectraMap &map_to_spectrum, ToleranceUnit tolerance_unit=ToleranceUnit::AUTO, double tolerance=20)
computes PSMExplainedIonCurrent (only of the first PeptideHit of each PepID)
const String & getName() const override
returns the name of the metric
static double annotatePSMExplainedIonCurrent_(PeptideIdentification &pep_id, const MSExperiment &exp, const QCBase::SpectraMap &map_to_spectrum, WindowMower &filter, PSMExplainedIonCurrent::ToleranceUnit tolerance_unit, double tolerance)
QCBase::Status requirements() const override
Returns the input data requirements of the compute(...) function.
virtual ~PSMExplainedIonCurrent()=default
Destructor.
PSMExplainedIonCurrent()=default
Default constructor.
const std::vector< Statistics > & getResults() const
returns results
void compute(PeptideIdentificationList &pep_ids, const ProteinIdentification::SearchParameters &search_params, const MSExperiment &exp, const QCBase::SpectraMap &map_to_spectrum, ToleranceUnit tolerance_unit=ToleranceUnit::AUTO, double tolerance=20)
computes PSMExplainedIonCurrent (only of the first PeptideHit of each PepID)
Structure for storing results: average and variance over all PSMs.
Definition: PSMExplainedIonCurrent.h:35
Container for peptide identifications from multiple spectra.
Definition: PeptideIdentificationList.h:66
Represents the set of candidates (SpectrumMatches) identified for a single precursor spectrum.
Definition: PeptideIdentification.h:63
Map to find a spectrum via its NativeID.
Definition: QCBase.h:63
This class serves as an abstract base class for all QC classes.
Definition: QCBase.h:29
ToleranceUnit
Definition: QCBase.h:49
A more convenient string class.
Definition: String.h:34
Retains the highest peaks in a sliding or jumping window.
Definition: WindowMower.h:30
Main OpenMS namespace.
Definition: openswathalgo/include/OpenMS/OPENSWATHALGO/DATAACCESS/ISpectrumAccess.h:19
Search parameters of the DB search.
Definition: ProteinIdentification.h:248