OpenMS
Loading...
Searching...
No Matches
Contaminants.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: Chris Bielow $
6// $Authors: Dominik Schmitz, Chris Bielow$
7// --------------------------------------------------------------------------
8
9#pragma once
10
14#include <OpenMS/QC/QCBase.h>
15#include <unordered_set>
16
17
18namespace OpenMS
19{
42 class OPENMS_DLLAPI Contaminants : public QCBase
43 {
44 public:
59
61 Contaminants() = default;
62
64 virtual ~Contaminants() = default;
65
104 void compute(FeatureMap& features, const std::vector<FASTAFile::FASTAEntry>& contaminants);
105
107 const std::string& getName() const override;
108
110 const std::vector<Contaminants::ContaminantsSummary>& getResults();
111
117 Status requirements() const override;
118
119 private:
121 const std::string name_ = "Contaminants";
122
124 std::vector<Contaminants::ContaminantsSummary> results_;
125
127 std::unordered_set<std::string> digested_db_;
128
143 void compare_(const std::string& key, PeptideHit& pep_hit, Int64& total, Int64& cont, double& sum_total, double& sum_cont, double intensity);
144 };
145} // namespace OpenMS
QualityControl metric: flag PSMs whose peptide sequences match a user-supplied contaminants FASTA (e....
Definition Contaminants.h:43
std::pair< Int64, Int64 > empty_features
(Number of features without a peptide hit, total number of features).
Definition Contaminants.h:57
const std::string & getName() const override
Name of this QC metric ("Contaminants").
double assigned_contaminants_intensity_ratio
Sum of feature intensities of contaminant feature-attached PSMs / sum of feature intensities of all f...
Definition Contaminants.h:56
double unassigned_contaminants_ratio
#contaminants in unassigned PSMs / #unassigned PSMs.
Definition Contaminants.h:54
virtual ~Contaminants()=default
Destructor.
void compute(FeatureMap &features, const std::vector< FASTAFile::FASTAEntry > &contaminants)
Annotate the PSMs of features with "is_contaminant" and append a summary to getResults.
double assigned_contaminants_ratio
#contaminants in feature-attached PSMs / #feature-attached PSMs.
Definition Contaminants.h:53
std::unordered_set< std::string > digested_db_
Cached digested contaminants database, filled on the first compute call and reused thereafter.
Definition Contaminants.h:127
std::vector< Contaminants::ContaminantsSummary > results_
Per-call summaries; compute appends one entry per invocation.
Definition Contaminants.h:124
void compare_(const std::string &key, PeptideHit &pep_hit, Int64 &total, Int64 &cont, double &sum_total, double &sum_cont, double intensity)
Increment the contaminant counters and annotate one hit with "is_contaminant".
const std::vector< Contaminants::ContaminantsSummary > & getResults()
Per-call summaries appended by compute, in call order.
Status requirements() const override
Input-data requirements of compute.
double all_contaminants_ratio
#contaminants in all PSMs / #all PSMs.
Definition Contaminants.h:55
Contaminants()=default
Default constructor.
Result bundle returned per compute call.
Definition Contaminants.h:52
A container for features.
Definition FeatureMap.h:78
Stores and handles combinations of enum values, e.g. a set of flags as bits flipped in an UInt64.
Definition FlagSet.h:28
Represents a single spectrum match (candidate) for a specific tandem mass spectrum (MS/MS).
Definition PeptideHit.h:52
This class serves as an abstract base class for all QC classes.
Definition QCBase.h:29
int64_t Int64
Signed integer type (64bit)
Definition Types.h:40
Main OpenMS namespace.
Definition openswathalgo/include/OpenMS/OPENSWATHALGO/DATAACCESS/ISpectrumAccess.h:19