OpenMS
MassDecomposer.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: Timo Sachsenberg $
6 // $Authors: Anton Pervukhin <Anton.Pervukhin@CeBiTec.Uni-Bielefeld.DE> $
7 // --------------------------------------------------------------------------
8 //
9 
10 #pragma once
11 
12 #include <vector>
13 
14 namespace OpenMS
15 {
16 
17  namespace ims
18  {
39  template <typename ValueType,
40  typename DecompositionValueType>
42  {
43 public:
47  typedef ValueType value_type;
48 
52  typedef DecompositionValueType decomposition_value_type;
53 
57  typedef std::vector<decomposition_value_type> decomposition_type;
58 
62  typedef std::vector<decomposition_type> decompositions_type;
63 
67  virtual ~MassDecomposer(){}
68 
75  virtual bool exist(value_type mass) = 0;
76 
84 
93 
101 
102  };
103 
104  } // namespace ims
105 } // namespace OpenMS
106 
An interface to handle decomposing of integer values/masses over a set of integer weights (alphabet).
Definition: MassDecomposer.h:42
virtual bool exist(value_type mass)=0
virtual decomposition_type getDecomposition(value_type mass)=0
virtual decomposition_value_type getNumberOfDecompositions(value_type mass)=0
DecompositionValueType decomposition_value_type
Definition: MassDecomposer.h:52
ValueType value_type
Definition: MassDecomposer.h:47
virtual ~MassDecomposer()
Definition: MassDecomposer.h:67
virtual decompositions_type getAllDecompositions(value_type mass)=0
std::vector< decomposition_type > decompositions_type
Definition: MassDecomposer.h:62
std::vector< decomposition_value_type > decomposition_type
Definition: MassDecomposer.h:57
Main OpenMS namespace.
Definition: FeatureDeconvolution.h:22