OpenMS
DBSearchParam.h
Go to the documentation of this file.
1 // Copyright (c) 2002-2023, The OpenMS Team -- EKU Tuebingen, ETH Zurich, and FU Berlin
2 // SPDX-License-Identifier: BSD-3-Clause
3 //
4 // --------------------------------------------------------------------------
5 // $Maintainer: Hendrik Weisser $
6 // $Authors: Hendrik Weisser $
7 // --------------------------------------------------------------------------
8 
9 #pragma once
10 
14 
15 namespace OpenMS
16 {
17  namespace IdentificationDataInternal
18  {
22  {
24  enum MassType mass_type;
25 
29 
30  std::set<Int> charges;
31 
32  std::set<String> fixed_mods;
33  std::set<String> variable_mods;
34 
39 
40  // allow for either "DigestionEnzymeProtein" or "DigestionEnzymeRNA":
46 
54  {
55  }
56 
57  DBSearchParam(const DBSearchParam& other) = default;
58 
59  bool operator<(const DBSearchParam& other) const
60  {
61  return (std::tie(molecule_type, mass_type,
68  std::tie(other.molecule_type, other.mass_type,
69  other.database, other.database_version, other.taxonomy,
70  other.charges, other.fixed_mods, other.variable_mods,
74  other.min_length, other.max_length));
75  }
76 
77  bool operator==(const DBSearchParam& other) const
78  {
79  return (std::tie(molecule_type, mass_type, database,
85  std::tie(other.molecule_type, other.mass_type,
86  other.database, other.database_version, other.taxonomy,
87  other.charges, other.fixed_mods, other.variable_mods,
93  other.missed_cleavages,
94  other.min_length, other.max_length));
95  }
96  };
97 
98  typedef std::set<DBSearchParam> DBSearchParams;
100  typedef std::map<ProcessingStepRef, SearchParamRef> DBSearchSteps;
101 
102  }
103 }
Base class for digestion enzymes.
Definition: DigestionEnzyme.h:27
Class for the enzymatic digestion of sequences.
Definition: EnzymaticDigestion.h:38
Specificity
when querying for valid digestion products, this determines if the specificity of the two peptide end...
Definition: EnzymaticDigestion.h:42
Interface for classes that can store arbitrary meta information (Type-Name-Value tuples).
Definition: MetaInfoInterface.h:35
A more convenient string class.
Definition: String.h:34
size_t Size
Size type e.g. used as variable which can hold result of size()
Definition: Types.h:101
std::map< ProcessingStepRef, SearchParamRef > DBSearchSteps
Definition: DBSearchParam.h:100
std::set< DBSearchParam > DBSearchParams
Definition: DBSearchParam.h:98
IteratorWrapper< DBSearchParams::iterator > SearchParamRef
Definition: DBSearchParam.h:99
MoleculeType
Definition: MetaData.h:40
@ PROTEIN
Definition: MetaData.h:41
MassType
Definition: MetaData.h:48
@ MONOISOTOPIC
Definition: MetaData.h:49
Main OpenMS namespace.
Definition: FeatureDeconvolution.h:22
Parameters specific to a database search step.
Definition: DBSearchParam.h:22
bool fragment_tolerance_ppm
Definition: DBSearchParam.h:38
String database_version
Definition: DBSearchParam.h:27
EnzymaticDigestion::Specificity enzyme_term_specificity
Definition: DBSearchParam.h:42
std::set< Int > charges
Definition: DBSearchParam.h:30
String taxonomy
Definition: DBSearchParam.h:28
std::set< String > variable_mods
Definition: DBSearchParam.h:33
std::set< String > fixed_mods
Definition: DBSearchParam.h:32
bool operator<(const DBSearchParam &other) const
Definition: DBSearchParam.h:59
bool precursor_tolerance_ppm
Definition: DBSearchParam.h:37
String database
Definition: DBSearchParam.h:26
enum MassType mass_type
Definition: DBSearchParam.h:24
double fragment_mass_tolerance
Definition: DBSearchParam.h:36
bool operator==(const DBSearchParam &other) const
Definition: DBSearchParam.h:77
Size min_length
Definition: DBSearchParam.h:44
double precursor_mass_tolerance
Definition: DBSearchParam.h:35
enum MoleculeType molecule_type
Definition: DBSearchParam.h:23
Size max_length
Definition: DBSearchParam.h:45
DBSearchParam(const DBSearchParam &other)=default
const DigestionEnzyme * digestion_enzyme
Definition: DBSearchParam.h:41
Size missed_cleavages
Definition: DBSearchParam.h:43
DBSearchParam()
Definition: DBSearchParam.h:47
Wrapper that adds operator< to iterators, so they can be used as (part of) keys in maps/sets or multi...
Definition: MetaData.h:20